当前位置: 首页>后端>正文

Flutter集成友盟U-App统计SDK

一、注册账号+创建应用

1、注册友盟账号

友盟官网 申请账号并登录。

2、创建应用

登陆 友盟+官网,在 我的产品 页面添加新应用,然后获取到Appkey,为下一步集成做准备。

3、SDK集成

可以参考Flutter SDK官方集成文档 和 官方demo,不过他们的官方文档写的不太详细。本文只介绍如何自动集成sdk。

common flutter暂未提供预初始化接口,需要用户自行通过原生进行。
Android端预初始化,需要在Applicaiton.onCreate函数中调用预初始化接口。
iOS端没有预初始化接口,开发者应确保App首次冷启动时,在用户阅读《隐私政策》并取得用户授权之后,才调用正式初始化函数初始化统计SDK。

3.1 安装

本文以1.2.7版本为例。最新版本号获取

//在工程 pubspec.yaml 中加入 
dependencies:
         umeng_common_sdk: ^1.2.7

执行 pub get 命令将sdk下载下来

3.2 SDK初始化

合规声明本文不做讨论,可参考 官方文档 进行合规声明

3.2.1 Andriod

我使用的 kotlinjava 版本初始化参考 官方demo
1、在MainActivity中导入头文件 import com.umeng.commonsdk.UMConfigure 并重写 onCreate 方法调用基础组件库初始化函数:

//UM日志打印
UMConfigure.setLogEnabled(true)
UMConfigure.preInit(this, "650c03b158a9eb5b0ae14f6a", "Umeng")

代码截图:


Flutter集成友盟U-App统计SDK,第1张

2、修改 AndroidManifest.xml 文件,添加网络许可设置,放在<application >上面

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.INTERNET"/>

3.2.2 iOS

我使用的Swift,OC版本参考 官方demo
1、因为使用的混编,已经创建好了桥接文件,直接在桥接文件里导入

#import <UMCommon/UMCommon.h>

具体参考下图:

Flutter集成友盟U-App统计SDK,第2张

2、在 AppDelegate.swift 里添加头文件并在 * override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool { } *函数中调用基础组件库初始化方法
//打开日志
UMConfigure.setLogEnabled(true)
//设置AppKey,初始化友盟所有组件产品,开发者在友盟官网申请的appkey
UMConfigure.initWithAppkey("650c041558a9eb5b0ae14faf", channel: "AppStore")

具体见下图


Flutter集成友盟U-App统计SDK,第3张

3.2.3 Flutter初始化

在Flutter中调用初始化方法,初始化sdk,就可以使用了。

导入头文件

import 'package:umeng_common_sdk/umeng_common_sdk.dart';

初始化方法

static Future<dynamic> initCommon(String androidAppkey, String iosAppkey, String channel); 

代码示例截图:


Flutter集成友盟U-App统计SDK,第4张

4、使用

操作完以上步骤后,就可以参考官方demo进行埋点数据上报了。

参考链接:
1、友盟集成文档:https://developer.umeng.com/docs/119267/detail/174923
2、Flutter接入常见问题:https://developer.umeng.com/docs/119267/detail/456496


https://www.xamrdz.com/backend/3d61940932.html

相关文章: