微信小程序 SDK 插件版使用说明

最后更新于:2018-10-16 16:04:08

1 插件版小程序 SDK 和小程序 SDK 区别

经过我们测试,发现如果小程序中使用了插件,在开发者工具下可以修改 App 和 Page,但在线上会报错不能修改
不能修改的话会导致我们 sensorsdata_conf.js 里配置的 autoTrack 自动采集的功能无效
在 2018-9 月的测试发现,新用户首次使用小程序会出现这样的问题,杀死微信后,再次打开小程序又可以使用。具体原因不详
针对上述情况,也就是使用了插件的小程序客户,需要使用插件版小程序 SDK
这个版本相比小程序 SDK ,复杂在于每个 Page 里的 JS 顶部都要引入一段代码,才可以自动采集 Page 里的预置事件

2 安装方法

  1. 从 github 上下载 微信小程序 sdk ,sensorsdata.min.js 和 sensorsdata_conf.js

  2. 在 sensorsdata_conf.js 中 增加配置 is_plugin: true

  3. 在app.js 和全部的 pages 目录里的 js 顶部引入如下代码

app.js 的顶部引入如下代码

var sensors = require('./utils/sensorsdata.min.js');
var App = sensors.App;

sensors.init();

在全部(注意是全部!)的 pages 目录里的 js 顶部引入如下代码

var Page = getApp().sensors.Page;

注意: 1 var App 与 var Page 变量名不能修改
2 所有的 pages 目录里的 js 顶部都要引入

3 自定义追踪代码

app.js 中自定义方法

// 方案1  通过 sensors 可以使用 track 等方法

var sensors = require('./utils/sensorsdata.min.js');
var App = sensors.App;

sensors.track()

// 方案2 通过在方法内部使用 this.sensors 可以使用 track 等方法

var sensors = require('./utils/sensorsdata.min.js');
var App = sensors.App;
App({
    onShow:function(){
        this.sensors.track();
    }
})

page 中使用自定义方法

var sensors = getApp();
var Page = sensors.Page;
sensors.track()