更新记录

2020.11.21(2020-12-30) 下载此版本

2020.11.23 支持全部小程序/小游戏实时埋点验证

帮助小程序开发者发版前,对自定义事件和属性进行实时上报测试,以便确认数据上报的正确性,并且优化SDK逻辑,不调用剪切版权限,即可使用实时埋点验证。

  • 实时埋点验证功能升级,支持各个小程序、小游戏支持进行自定义事件埋点验证;
  • 被授权账号支持对被授权的子管理员小程序进行实时埋点验证;
  • 使用方式请查看:https://developer.umeng.com/docs/147615/detail/184479

2020.10.21(2020-10-21) 下载此版本

以下是本轮产品更新功能:

行业功能二期

层级分析功能的多层级报表、汇总节点榜单报表; 支持多个应用共享一个层级结构设置。 授权功能升级

新增「行业功能查看用户」角色权限; 支持快速复制某账号的权限设置,快速给其他账号授权相同权限。 支持「数据权限」能力,允许在行业功能报表中,按照层级结构授权数据报表。 应用选择器下拉框用户使用体验优化

2020.08.27(2020-08-28) 下载此版本

  • 新增支持字节跳动小游戏(头条、抖音)、QQ小游戏
  • 专门为「百货商城」、「生活服务」、「餐饮」、「汽车」、「旅游住宿」、「出行」、「运营商」、「社区团购」等业态推出的层级分析功能;可以让你轻松查看小程序中业务层级,例如「省-城市-店铺」,「车品牌-车系-车型号」的节点数据

集成指南: https://developer.umeng.com/docs/147615/cate/147617

查看更多

平台兼容性

微信小程序SDK集成

适用范围

该文档适用于友盟+微信小程序统计SDK 2.3.2 及以上版本。

1. 注册友盟+账号

登录友盟+官网(www.umeng.com),按照引导注册友盟+账号 特别提醒:我们建议开发者在注册账号时使用企业邮箱,避免使用个人邮箱注册,防止由于个人离职带来的问题,建议使用的账号形式 :umeng@企业域名、apps@企业域名、dev@企业域名

2. 安装SDK

npm install umtrack-wx  --save

注:在微信小程序内使用npm请参考https://developers.weixin.qq.com/miniprogram/dev/devtools/npm.html

3. 集成SDK

在app.js文件内,添加如下代码,即可进行基础指标的统计:**

import 'umtrack-wx';
App({
  umengConfig: {
    appKey: 'YOUR_UMENG_APPKEY', //由友盟分配的APP_KEY
    useOpenid: false, // 是否使用openid进行统计,此项为false时将使用友盟+随机ID进行用户统计。使用openid来统计微信小程序的用户,会使统计的指标更为准确,对系统准确性要求高的应用推荐使用OpenID。
    autoGetOpenid: false, // 是否需要通过友盟后台获取openid,如若需要,请到友盟后台设置appId及secret
    debug: true, //是否打开调试模式
    uploadUserInfo: true // 自动上传用户信息,设为false取消上传,默认为false
  }
});

注意:切记一定要正确设置umengConfig,不要拼写错误

* 使用 OpenID(可选)

当useOpenid: true时 方法一:开发者需要额外添加代码上传openid,否则数据不会上报

// 开启后必须额外添加代码上传OpenID,否则数据不会上报
wx.uma.setOpenid(openid)

参数:

  • id(string): 开发者获取到的用户openid

返回值:

方法二:开启autoGetOpenid: true并在友盟后台设置有效appId及secret信息

App({
  umengConfig: {
    appKey: 'YOUR_UMENG_APPKEY', //由友盟分配的APP_KEY
    useOpenid: true,
    // 授权友盟+通过后台自动获取openid,可防止数据统计过程中因未采集到OpenID而造成
    // 数据丢失的情况。开启后请到友盟+小程序应用设置中添加appId及secret信息
    autoGetOpenid: true
  }

4. 增加友盟+数据服务域名白名单

在微信开发者后台添加request合法域名:umini.shujupie.com 操作步骤:登录微信公众平台,进入小程序的 设置->开发->开发设置->服务器域名,把 umini.shujupie.com 加入 request合法域名,如图:

5. 申请Appkey

服务商在获取小程序APPID、订单号、授权码后,服务商可通过OpenAPI的方式,申请友盟+APPkey,并返还到SDK中。

API测试工具,请点击下载:UMiniOpenApi-1.0.10-java.zip

        UmengUminiCreateMiniAppParam param = new UmengUminiCreateMiniAppParam();
        param.setName("应用名称");
        param.setType("mini");
        param.setPlatform("平台");
        param.setLanguage("CN");
        param.setFirstLevel("一级分类");
        param.setSecondLevel("二级分类");
        param.setDescription("描述……");
        param.setMiniAppId("");
        param.setMiniAppSecret("");
        param.setMiniPublicKey("");
        param.setMiniPrivateKey("");

        try {
            UmengUminiCreateMiniAppResult result = apiExecutor.execute(param);
            System.out.println("1、" + JSONObject.toJSONString(result));
        } catch (OceanException e) {
            System.out.println("1、errorCode=" + e.getErrorCode() + ", errorMessage=" + e.getErrorMessage());
        }

特别说明:

  1. OpenAPI具体说明请参考:

    https://developer.umeng.com/open-api/docs/com.umeng.umini/umeng.umini.createMiniApp/1

  2. 行业分类请参考:https://developer.umeng.com/docs/147615/detail/169442

  3. 若创建应用数超过300,请联系在线客服

  4. 具体集成方式可参考demo:https://github.com/umeng/mp-demos

高级功能

如需使用其他API,需要添加如下代码:

import uma from 'umtrack-wx';

App({
  umengConfig: {
    appKey: 'test5d886faf4ca357bfc900',
    useOpenid: true,
    autoGetOpenid: false,
    debug: true
  },
  globalData: {
    uma // 请将uma模块绑定在gloabalData下,以便后续使用
  }
});

1. setUnionid

开发者自行设置用户的unionid

setUnionid(id)

参数:

  • id(string): 开发者获取到的用户unionid

返回值:

  • 2. 自定义事件

    trackEvent(eventId, params)

    参数:

  • id(string): 事件ID需在官网申请,长度在128个字符内

  • params(object|string):

    • object不能为数组
    • 当params为object类型时,每个key长度不能超过256个字符
    • 当params为object类型时,其携带key的个数不能超过100个
    • 存在规则不合法情况时,丢弃整条事件

返回值:

  • 2.1 仅统计事件,无属性时,使用如下方法:

    wx.uma.trackEvent('事件ID');

    2.2 统计带属性的事件时,使用如下方法:

    
    wx.uma.trackEvent('事件ID', { '属性1':'属性值1','属性2':'属性值2' });

// 字符型属性值 wx.uma.trackEvent('ViewProductDetails', { 'Category':'家电','ItemName':'西门子冰箱' });

// 数值型属性值 wx.uma.trackEvent('Pay', { 'PayAmount':6999 });

> 注意:
> 1. params为object类型时,属性值仅支持字符串和数值两种类型;
> 1. 请在App.onLaunch之后调用事件。

## 2.3 自定义事件添加流程

1. 进入U-MiniProgram后台“自定义事件”页面,点击“事件管理”;
1. 点击“添加事件”,输入小程序埋点的事件ID和名称;
1. 返回小程序自定义事件页面查看该事件数据。
# 3. 设置应用用户ID
当用户在您的小程序上注册以后,您的应用服务端会在用户数据库里添加一条记录并且分配一个用户ID,可以通过 `setUserid` 接口设置该用户ID,以便后续做数据打通或基于应用用户ID做计算时使用。

setUserid(userId, provider)

参数:

- userId(string): 您的应用为用户生成的唯一ID
- provider(string): ID提供方,兼容老接口使用,无特殊需要应忽略该参数返回值:无示例:

wx.uma.setUserid('custom_userid');

# 4. 上传用户信息
开发者可通过在配置中添加 `uploadUserInfo: true` 选项来使友盟自动上报用户信息。将 `uploadUserInfo` 设置为 `false` 则取消上报用户信息。上传的用户信息为小程序平台公开可获取的用户基础信息,例如昵称、头像、性别、地区、语言等,这些信息将用于U-MiniProgram产品中与用户相关的功能统计中。示例:

import 'umtrack-wx'; App({ umengConfig: { appKey: 'YOUR_UMENG_APPKEY', //由友盟分配的APP_KEY useOpenid: false, // 是否使用openid进行统计,此项为false时将使用友盟+随机ID进行用户统计。使用openid来统计微信小程序的用户,会使统计的指标更为准确,对系统准确性要求高的应用推荐使用OpenID。 autoGetOpenid: false, // 是否需要通过友盟后台获取openid,如若需要,请到友盟后台设置appId及secret debug: true, //是否打开调试模式

uploadUserInfo: true // 自动上传用户信息,设为false取消上传,默认为false

} });


# SDK成功接入验证方法
该方案仅提供验证是否集成成功的方法,由于在开发环境下可能会存在数据不完整的情况,请您正式发布小程序后在验证数据正确性。

1. 按照上述描述方法引入SDK;
1. 进入IDE打开调试工具中的Console选项,若看到有 [umeng] -- 集成SDK 提示 即表示SDK集成成功。
# 说明事项

1. 慎重调用以及wx.clearStorage() 以及 wx.clearStorageSync() 接口!SDK会将用户相关操作数据缓存在客户端数据存储模块,在特定时间启动发送策略。若调用该接口可导致数据统计不准确的问题;
1. 若用户在使用小程序过程强制关闭微信有可能会造成统计数据丢失的情况。
# 第三方框架支持
目前小程序SDK支持以下第三方框架,具体使用方法请参考demo:[https://github.com/umeng/mp-demos](https://github.com/umeng/mp-demos)

- uniapp
- taro
- chameleon
- mpvue
- wepy2
- 微信小游戏
> 目前只有2.2.0及以上版本的SDK才支持以上第三方框架

# 视频引导
[视频引导教程](https://info.umeng.com/detail?id=276&cateId=12)
# FAQ:

- Q: 注册应用时,提示应用名称已存在
- A:【友盟+】后台的应用名与实际应用名和包名无关,建议命名为应用名+平台,例如:友盟+小程序(微信)、友盟+小程序(支付宝)
- Q: 我忘记我的Appkey了,在哪里能查到
- A:进入小程序统计-应用设置页面,可看到当前小程序的Appkey

[https://developers.weixin.qq.com/miniprogram/dev/devtools/npm.html](https://developers.weixin.qq.com/miniprogram/dev/devtools/npm.html)

隐私、权限声明

1. 本插件需要申请的系统权限列表:

须创建友盟账户,创建地址:www.umeng.com

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

请注意在微信或支付宝后台,添加服务器域名 “umini.shujupie.com”

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

不包含

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问