TalkingData Flutter 平台 SDK 由封装层和Native SDK两部分构成,目前Github上提供了封装层代码,需要从 TalkingData官网 下载最新版的 Android 和 iOS 平台 Native SDK,组合使用。
-
下载本项目(封装层)到本地;
-
访问 TalkingData官网 下载最新版的 Android 和 iOS 平台 TalkingData SDK (Native SDK)
- 方法1:选择 Flutter平台进行功能定制;
- 方法2:分别选择 Android 和 iOS 平台进行功能定制,请确保两个平台功能项一致;
-
将下载的最新版 Native SDK 复制到 封装层 中,构成完整的 Flutter SDK。
-
Android 平台 将最新的
.jar文件复制到talkingdata_sdk_plugin/android/libs目录下 -
iOS 平台 将最新的
.xcframework文件复制到talkingdata_sdk_plugin/ios/Frameworks目录下
-
-
按
Native SDK功能选项对封装层代码进行必要的修改,详见“注意事项”第2条; -
将 Flutter SDK 集成您需要统计的工程中,并按 集成文档 进行必要配置和功能调用。
| 事件名称 | 电商零售 | 游戏娱乐 | 金融借贷 | 旅游出行 | 在线教育 | 小说阅读 | 其他行业 |
|---|---|---|---|---|---|---|---|
| 联系 | √ | √ | √ | √ | |||
| 付费 | √ | √ | √ | √ | √ | ||
| 退单 | √ | √ | √ | √ | |||
| 预约 | √ | √ | |||||
| 预订 | √ | √ | |||||
| 查看商品 | √ | ||||||
| 添加购物车 | √ | ||||||
| 查看购物车 | √ | ||||||
| 订单 | √ | ||||||
| 支付订单 | √ | ||||||
| 取消订单 | √ | ||||||
| 授信 | √ | ||||||
| 交易 | √ | ||||||
| 创建角色 | √ | ||||||
| 通过关卡 | √ | ||||||
| 完成新手教程 | √ | ||||||
| 课程学习 | √ | ||||||
| 完成课程试听 | √ | ||||||
| 文章阅读 | √ | ||||||
| 完成免费阅读 | √ | ||||||
| 解锁成就 | √ | √ | |||||
| 浏览详情 | √ | √ | √ | ||||
| 完成试用体验 | √ | √ | √ | √ |
当前封装层代码包含了所有行业接口。如果在官网申请的静态库不包含上述功能和业务线,请开发者按照上图对封装层文件进行必要删减。以免对应的接口不存在对应的实现导致报错。需要删减的文件如下:
iOS:
TalkingDataSDKPlugin.m
Android:
TalkingDataSDKPlugin.java
Dart:
TalkingDataSDK.js
举例:
在官网未勾选小说阅读行业。那么请对照上表,删除小说阅读行业对应的接口。这里以文章阅读接口作为举例:
删除TalkingDataSDKPlugin.m的:
[TalkingDataSDK onRead:profile book:book begin:begin.intValue duration:duration.intValue];
删除TalkingDataSDKPlugin.java的:
TalkingDataSDK.onRead(
(String) call.argument("profile"),
(String) call.argument("book"),
callTransInt(call, "begin"),
callTransInt(call, "duration"));
删除talkingdata_sdk_plugin.dart 的:
static Future<void> onRead(
String profile, String book, int begin, int duration) async {
return await _channel.invokeMethod('onRead', <String, dynamic>{
'profile': profile,
'book': book,
'begin': begin,
'duration': duration
});
}
将最新的Android/iOS的SDK放入 plugin 路径下的对应位置
-
Android 平台 将最新的
.jar文件复制到android/libs目录下 -
iOS 平台 将最新的
.a文件复制到ios/Assets目录下将最新的
.h文件赋值到ios/Classes目录下
连接真机。终端运行:
cd example
flutter run