1. 集成 uni-app 插件

下载 uni-app 插件(https://download.zalldata.cn/sdk/),将下载的 uni-app-sdk 文件夹放在自己项目中的 common 文件夹中

2. 使用 uni-app 进行埋点

2.1 设置全局变

2.1.1 globalData 设置全局变量

  • App.vue 文件中配置
script>
    import zall from ' uni-app JS SDK 路径/index.js';
    zall.setPara({
        server_url:"https://xxxxx",       //数据上报地址 必填 @Platform All
        show_log:true,                    //日志打印  @Platform All
        name:'zall',                   //参考小程序文档 @Platform 小程序
          autoTrack:{
            appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集
            appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集
            appHide: true, // 默认为 true,false 则关闭 $MPHide 事件采集
            pageShow: true, // 默认为 true,false 则关闭 $MPViewScreen 事件采集
            pageShare: true, // 默认为 true,false 则关闭 $MPShare 事件采集
            mpClick: false, // 默认为 false,true 则开启 $MPClick 事件采集
                mpFavorite: true, // 默认为 true,false 则关闭 $MPAddFavorites 事件采集
            pageLeave: false // 默认为 false, true 则开启 $MPPageLeave事件采集
        },
        app_flush_interval:15000,         //设置两次数据发送的最小时间间隔 @Platform Android&iOS
        app_flush_bulkSize:100,           //设置本地缓存日志的最大条目数,最小 50 条 @Platform Android&iOS
        app_flush_network_policy:30,      // 设置 flush 时网络发送策略,默认 3G、4G、WI-FI 环境下都会尝试 flush
                                          // TYPE_NONE = 0;//NULL
                                          // TYPE_2G = 1;//2G
                                          // TYPE_3G = 1 << 1;//3G 2
                                          // TYPE_4G = 1 << 2;//4G 4
                                          // TYPE_WIFI = 1 << 3;//WIFI 8
                                          // TYPE_5G = 1 << 4;//5G 16
                                          // TYPE_ALL = 0xFF;//ALL 255
                                          // 例:若需要开启 4G 5G 发送数据,则需要设置 4 + 16 = 20
        app_session_interval_time:30000,  //Session 时长,若 App 在后台超过设定事件,则认为当前 Session 结束,发送 $AppEnd 事件,单位毫秒 @Platform Andorid
        app_data_collect:true             //是否开启数据采集 @Platform Android
    });
    //初始化方法 @Platform H5、小程序
    zall.init();
    export default {
        globalData:{
            zall:zall
        },
        onLaunch: function() {
            console.log('App Launch')
        },
        onShow: function() {
            console.log('App Show')
        },
        onHide: function() {
            console.log('App Hide')
        }
    }
</script>
  • main.js 文件中配置
import zall from 'uni-app JS SDK 路径/index.js';
zall.setPara({
    server_url:"https://xxxxx",       //数据上报地址 必填 @Platform All
    show_log:true,                    //日志打印  @Platform All
    name:'zall',                   //参考小程序文档 @Platform 小程序
      autoTrack:{
        appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集
        appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集
        appHide: true, // 默认为 true,false 则关闭 $MPHide 事件采集
        pageShow: true, // 默认为 true,false 则关闭 $MPViewScreen 事件采集
        pageShare: true, // 默认为 true,false 则关闭 $MPShare 事件采集
        mpClick: false, // 默认为 false,true 则开启 $MPClick 事件采集
        mpFavorite: true, // 默认为 true,false 则关闭 $MPAddFavorites 事件采集
        pageLeave: false // 默认为 false, true 则开启 $MPPageLeave事件采集
    },
    app_flush_interval:15000,         //设置两次数据发送的最小时间间隔 @Platform Android&iOS
    app_flush_bulkSize:100,            //设置本地缓存日志的最大条目数,最小 50 条 @Platform Android&iOS
    app_flush_network_policy:30,      //设置 flush 时网络发送策略,默认 3G、4G、WI-FI 环境下都会尝试 flush  @Platform Android&iOS
    app_session_interval_time:30000,  //Session 时长,若 App 在后台超过设定事件,则认为当前 Session 结束,发送 $AppEnd 事件,单位毫秒 @Platform Andorid
    app_data_collect:true             //是否开启数据采集 @Platform Android
});
//初始化方法 @Platform H5、小程序
zall.init();

在 Page 中获取插件实例方式如下

  • vue页面
<script>
   var zall = getApp().globalData.zall;
</script>
  • JS页面
import zall from ' uni-app JS SDK 路径/index.js';

2.1.2 import 方式设置全局变量

  • App.vue 文件中配置

    <script>
      import zall from 'uni-app JS SDK 路径/index.js';
      zall.setPara({
          server_url:"https://xxxxx",       //数据上报地址 必填 @Platform All
          show_log:true,                    //日志打印  @Platform All
          name:'zall',                   //参考小程序文档 @Platform 小程序
           autoTrack:{
              appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集
              appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集
              appHide: true, // 默认为 true,false 则关闭 $MPHide 事件采集
              pageShow: true, // 默认为 true,false 则关闭 $MPViewScreen 事件采集
              pageShare: true, // 默认为 true,false 则关闭 $MPShare 事件采集
              mpClick: false, // 默认为 false,true 则开启 $MPClick 事件采集
              mpFavorite: true, // 默认为 true,false 则关闭 $MPAddFavorites 事件采集
              pageLeave: false // 默认为 false, true 则开启 $MPPageLeave事件采集
          },         
          app_flush_interval:15000,         //设置两次数据发送的最小时间间隔 @Platform Android&iOS
          app_flush_bulkSize:100,            //设置本地缓存日志的最大条目数,最小 50 条 @Platform Android&iOS
          app_flush_network_policy:30,      //设置 flush 时网络发送策略,默认 3G、4G、WI-FI 环境下都会尝试 flush  @Platform Android&iOS
          app_session_interval_time:30000,  //Session 时长,若 App 在后台超过设定事件,则认为当前 Session 结束,发送 $AppEnd 事件,单位毫秒 @Platform Andorid
          app_data_collect:true             //是否开启数据采集 @Platform Android
      });
      //初始化方法 @Platform H5、小程序
      zall.init();
    </script>
    
  • main.js 文件中配置

import zall from 'uni-app JS SDK 路径/index.js';
zall.setPara({
    server_url:"https://xxxxx",       //数据上报地址 必填 @Platform All
    show_log:true,                    //日志打印  @Platform All
    name:'zall',                   //参考小程序文档 @Platform 小程序
      autoTrack:{
        appLaunch: true, // 默认为 true,false 则关闭 $MPLaunch 事件采集
        appShow: true, // 默认为 true,false 则关闭 $MPShow 事件采集
        appHide: true, // 默认为 true,false 则关闭 $MPHide 事件采集
        pageShow: true, // 默认为 true,false 则关闭 $MPViewScreen 事件采集
        pageShare: true, // 默认为 true,false 则关闭 $MPShare 事件采集
        mpClick: false, // 默认为 false,true 则开启 $MPClick 事件采集
        mpFavorite: true, // 默认为 true,false 则关闭 $MPAddFavorites 事件采集
        pageLeave: false // 默认为 false, true 则开启 $MPPageLeave事件采集
    },
    app_flush_interval:15000,         //设置两次数据发送的最小时间间隔 @Platform Android&iOS
    app_flush_bulkSize:100,            //设置本地缓存日志的最大条目数,最小 50 条 @Platform Android&iOS
    app_flush_network_policy:30,      //设置 flush 时网络发送策略,默认 3G、4G、WI-FI 环境下都会尝试 flush  @Platform Android&iOS
    app_session_interval_time:30000,  //Session 时长,若 App 在后台超过设定事件,则认为当前 Session 结束,发送 $AppEnd 事件,单位毫秒 @Platform Andorid
    app_data_collect:true             //是否开启数据采集 @Platform Android
});
//初始化方法 @Platform H5、小程序
zall.init();

在 Page 中获取插件实例方式如下

  • vue页面
<script>
    import zall from 'uni-app JS SDK 路径/index.js';
</script>
  • JS页面
import zall from 'uni-app JS SDK 路径/index.js';

2.2 代码埋点

具体的位置添加事件埋点,以按钮点击时触发事件为例

其中对应的事件名为:BuyProduct; 对应的事件自定义属性为 ProductIDUserLevel

zall.track("BuyProduct",{ProductID : "Laptop Computer", UserLevel : 3});

2.3 用户登录

当用户注册成功或者登录成功时,需要调用 login 接口

zall.login("<#登录 id#>");

为了准确记录登录用户的行为信息,建议在以下时机个调用一次 login 接口

  • 用户在注册成功时;
  • 用户登录成功时;
  • 已登录用户每次启动 App 时。

2.4 记录激活事件

可以在设置全局变量后调用激活接口

zall.trackAppInstall({DownloadChannel : "AppStore"});

2.5 设置公共属性

对于所有事件都需要添加的属性,在设置全局变量后调用 register 方法将属性注册为公共属性

zall.register({key1:"value1",key2 : "value2"});
  • 公共属性在 H5 的页面生命周期内有效
  • 小程序在 App 生命周期内有效
  • App 会保存在本地缓存中
  • 可以通过调用 unRegister 方法删除一个或者多个公共属性。也可以使用 clearRegister 方法删除所有已经设置的公共属性

2.6 设置用户属性

setProfile 方法可以设置用户属性,同一个 key 多次设置时,value 值会进行覆盖替换

zall.setProfile({key1:"value1",key2:"value2"});

results matching ""

    No results matching ""