xy_umeng 0.0.1 copy "xy_umeng: ^0.0.1" to clipboard
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();

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】项。

调用下面方法,成功会触发addLinkListener.onInstall回调,将获取到JS页面配置的参数。

// 建议在首次安装时调用
XYUmeng.instance.getInstallParams(enablePasteboard: true);
1
likes
0
points
349
downloads

Publisher

unverified uploader

Weekly Downloads

友盟 U-App 统计 与 U-Link 智能超链 Flutter 插件,支持 Android 和 iOS 双平台。

Homepage
Repository
View/report issues

Topics

#xy #analytics #umeng #deeplink #flutter-plugin

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on xy_umeng

Packages that implement xy_umeng