xy_umeng 0.0.1
xy_umeng: ^0.0.1 copied to clipboard
友盟 U-App 统计 与 U-Link 智能超链 Flutter 插件,支持 Android 和 iOS 双平台。
xy_umeng #
-
非友盟官方库,但支持友盟统计U-App、智能超链U-Link,后续将完善更多功能。
-
注意隐私合规,注意init调用时机,避免审核被拒绝。
-
Scheme 只能英文小写,有特殊字符时,JS U-Link报错,有大写时,Android唤醒失效。
-
iOS SDK默认采集Advertising Identifier (IDFA) 标识。在 App Store Connect 的“广告标识符(IDFA)”部分,你需要勾选“是”,应用内有/无广告看实际情况勾选。还需要在 Info.plist 文件中配置 NSUserTrackingUsageDescription 权限描述,向用户说明使用IDFA的原因。
统计分析配置 #
- Android 如果开发者调用kill或者exit之类的方法杀死进程,或者双击back键会杀死进程。请务必在此之前调用次方法,用来保存统计数据。
XYUmeng.instance.onKillProcess();
- iOS 在 Info.plist 文件中配置 NSUserTrackingUsageDescription 权限描述,向用户说明使用IDFA的原因。
<key>NSUserTrackingUsageDescription</key>
<string>获取IDFA用来更准确的分析核对数据,用不用于广告看自身应用功能</string>
导入 #
import 'package:xy_umeng/xy_umeng.dart';
初始化 #
// ... 需要同意隐私协议才能调用,第二次启动时已经同意就允许直接调用
// 确保 await 初始化完成,再调用其他的
await XYUmeng.instance.init(androidAppKey: "", iosAppKey: "", channel: "", androidMessageSecret: "");
// 日志
await XYUmeng.instance..setLogEnabled(true);
// 自动页面统计
await XYUmeng.instance..setAutoPageEnabled(true);
// 添加友盟超链的监听
XYUmeng.instance.addLinkListener(
onInstall: (XYLinkInstallModel model) {
Logger.d('onInstall getData ${model.getData}');
},
onLaunch: (XYLinkLaunchModel model) {
Logger.d('onLaunch getData ${model.toString()}');
},
onError: (String errorMessage) {
Logger.d('onError $errorMessage');
},
);
退出应用 #
- Android 如果开发者调用kill或者exit之类的方法杀死进程,或者双击back键会杀死进程。请务必在此之前调用此方法,用来保存统计数据。
XYUmeng.instance.onKillProcess();
智能超链U-Link配置 #
Android原生配置
- 友盟控制台需要配置:Deeplink配置-Android基础参数-Scheme(只能英文小写)
找到项目目录/android/app/src/main/AndroidManifest.xml 在
<application<activity中,找到同为<intent-filter>标签的下面,添加代表scheme的一栏。要替换代码中的Scheme
<!-- U-Link配置 -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="{Deeplink配置-Android基础参数填写的唯-Scheme}" />
</intent-filter>
iOS原生配置
1、URL Scheme配置(二选一,如果没有开发者账号,那么只能用这种)
- 友盟控制台需要配置:Deeplink配置-iOS基础参数-Scheme(只能英文小写)
找到项目目录/ios/Runner/Info.plist,添加如下代码,要替换代码中的Scheme
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLName</key>
<string>UMLink</string>
<key>CFBundleURLSchemes</key>
<array>
<string>{Deeplink配置-iOS基础参数填写的唯-Scheme}</string>
</array>
</dict>
</array>
2、Universal link配置(二选一,有开发者账号,推荐这种,支持微信拉起App)
- 友盟控制台需要配置:Deeplink配置-iOS基础参数-Universal link
配置流程参考友盟官方提供的方法配置方法,其中的
【五、配置Universal link】项。
获取U-Link安装参数 #
调用下面方法,成功会触发addLinkListener.onInstall回调,将获取到JS页面配置的参数。
// 建议在首次安装时调用
XYUmeng.instance.getInstallParams(enablePasteboard: true);