• 在使用前,请先阅读数据模型
  • 神策 Weex 模块 ,封装了神策 Android & iOS SDK 常用 API ,使用此模块,可以在   Weex 开发的应用中完成埋点的统计上报

1. Weex SDK 集成

第一步:通过 npm 安装 Weex SDK 模块

在 Weex 项目根目录执行如下指令安装 Weex SDK。

npm install sa-sdk-weex
CODE

第二步:引入 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;
JS

第三步:初始化 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   //元素点击
  }
})
CODE

2. Android SDK 在 Weex 中使用说明

2.1. 集成神策分析 Android SDK

可参考:https://manual.sensorsdata.cn/sa/latest/tech_sdk_client_android_basic-7541696.html

2.2. 添加神策模块文件

下载 WeexSensorsDataAnalyticsModule 文件,可下载,将  WeexSensorsDataAnalyticsModule.java 文件 粘贴到主 module 的包中。如下图所示:

2.3. 初始化 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); 
	}
CODE

3. iOS SDK 在 Weex 中使用说明

3.1. 集成神策分析

  • 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 原生项目中,如下图所示:

                 


3.2. 初始化 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;
}
CODE

注意

如果在 weex 中初始化 SDK,则不需要在 iOS 原生项目中再初始化神策分析 iOS SDK