- 在使用前,请先阅读数据模型
神策 Weex 模块 ,封装了神策 Android & iOS SDK 常用 API ,使用此模块,可以在 Weex 开发的应用中完成埋点的统计上报
Weex SDK 集成
第一步:通过 npm 安装 Weex SDK 模块
在 Weex 项目根目录执行如下指令安装 Weex SDK。
npm install sa-sdk-weex
第二步:引入 Weex SDK
// 步骤1: 引入模块
import sensors from 'sa-sdk-weex'
// 步骤2: 将项目中 vue-router 传入 Weex SDK 提供的 useRouter 方法以支持页面切换时自动采集页面浏览事件
const { router } = require('./router')
sensors.useRouter(router)
// 步骤3: 将 SDK 对象挂载搭 VUE 全局对象方便后续使用
Vue.prototype.$sensors = sensors;
第三步:初始化 SDK
this.$sensors.init({
server_url: '数据接收地址',
show_log: false,//是否开启日志
super_properties: { // 配置全局属性,所有上报事件属性中均会携带
},
web: {//web 初始化配置
send_type: 'image',// 支持 'image'、'ajax'、'beacon'
page_view: true, //自动采集 WEB页面浏览事件
web_click: true, //自动采集 WEB 页面元素点击事件
web_stay: true //自动采集WEB 页面停留事件,不支持根元素为 scroller 或 list 等 Weex 内置滚动容器内滚动
},
app: {// Android & iOS 初始化配置
app_start: true, //应用启动
app_end: true, //应用退出
view_screen: true, //页面浏览
view_click: true //元素点击
}
})
Android SDK 在 Weex 中使用说明
集成神策分析 Android SDK
可参考:https://manual.sensorsdata.cn/sa/latest/tech_sdk_client_android_basic-7541696.html
添加神策模块文件
下载 WeexSensorsDataAnalyticsModule 文件,可下载,将 WeexSensorsDataAnalyticsModule.java 文件 粘贴到主 module 的包中。如下图所示:
初始化 SDK(可选) 和注册神策 Weex 模块
在 Application 的 onCreate() 方法中同步调用 SensorsDataAPI.startWithConfigOptions() 初始化 SDK:
注意
如果在 weex 中初始化 SDK,则不需要在 Android Application 中再初始化神策分析 Android SDK
示例:
@Override
public void onCreate() {
super.onCreate();
//初始化神策 SDK
initSensorsdataSDK();
WXSDKEngine.addCustomOptions("appName", "WXSample");
WXSDKEngine.addCustomOptions("appGroup", "WXApp");
WXSDKEngine.initialize(this,
new InitConfig.Builder().setImgAdapter(new ImageAdapter()).build()
);
try {
WXSDKEngine.registerModule("event", WXEventModule.class);
//注册神策模块文件
WXSDKEngine.registerModule("WeexSensorsDataAnalyticsModule", WeexSensorsDataAnalyticsModule.class);
} catch (WXException e) {
e.printStackTrace();
}
AppConfig.init(this);
WeexPluginContainer.loadAll(this);
}
private void initSensorsdataSDK(){
SAConfigOptions configOptions = new SAConfigOptions("");
// 打开自动采集, 并指定追踪哪些 AutoTrack 事件
configOptions.setAutoTrackEventType(SensorsAnalyticsAutoTrackEventType.APP_START |
SensorsAnalyticsAutoTrackEventType.APP_END |
SensorsAnalyticsAutoTrackEventType.APP_CLICK |
SensorsAnalyticsAutoTrackEventType.APP_VIEW_SCREEN);
// 是否开启日志
configOptions.enableLog(false);
//传入 SAConfigOptions 对象,初始化神策 SDK
SensorsDataAPI.startWithConfigOptions(this, configOptions);
}
iOS SDK 在 Weex 中使用说明
集成神策分析
CocoaPods 方式
- 在 Podfile 文件中添加 pod 'WeexSensorsDataAnalyticsModule'
- 打开终端,切换到 Weex 导出的 iOS 原生项目目录
- 执行 pod install 或 pod update
注意
pod 引入 WeexSensorsDataAnalyticsModule 仓库,也会自动引入神策分析 iOS SDK(SensorsAnalyticsSDK),无需单独集成。
源码集成
- 集成神策分析 iOS SDK:集成方式可查看 iOS SDK 使用说明
- 添加 Weex 神策模块文件:
点击此处 下载神策分析 Weex SDK,并将 SDK 的 ios 目录下的 WeexSensorsDataAnalyticsModule 文件夹添加到 Weex 导出的 iOS 原生项目中,如下图所示:
- 在 Podfile 文件中添加 pod 'WeexSensorsDataAnalyticsModule'
- 打开终端,切换到 Weex 导出的 iOS 原生项目目录
- 执行 pod install 或 pod update
注意
pod 引入 WeexSensorsDataAnalyticsModule 仓库,也会自动引入神策分析 iOS SDK(SensorsAnalyticsSDK),无需单独集成。
- 集成神策分析 iOS SDK:集成方式可查看 iOS SDK 使用说明
- 添加 Weex 神策模块文件:
点击此处 下载神策分析 Weex SDK,并将 SDK 的 ios 目录下的 WeexSensorsDataAnalyticsModule 文件夹添加到 Weex 导出的 iOS 原生项目中,如下图所示:
初始化 SDK(可选) 和注册神策 Weex 模块
打开 Weex 导出的 iOS 原生项目,在 -didFinishLaunchingWithOptions: 方法中初始化 SDK 并注册神策组件,如下所示:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// 初始化神策分析配置
SAConfigOptions *options = [[SAConfigOptions alloc] initWithServerURL:<#数据接收地址#> launchOptions:launchOptions];
// 开启 $AppStart 和 $AppEnd 事件的自动采集
options.autoTrackEventType = SensorsAnalyticsEventTypeAppStart |
SensorsAnalyticsEventTypeAppEnd ;
// 初始化 SDK
[SensorsAnalyticsSDK startWithConfigOptions:options];
//初始化 Weex
[WeexSDKManager setup];
// 注册神策 Weex 模块
[WXSDKEngine registerModule:@"WeexSensorsDataAnalyticsModule" withClass:[WeexSensorsDataAnalyticsModule class]];
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}
注意
如果在 weex 中初始化 SDK,则不需要在 iOS 原生项目中再初始化神策分析 iOS SDK