概述
灯塔是以质量监控、用户分析为核心的移动APP运营平台,MSDK内部集成了灯塔SDK组件,通过我们封装的接口,您可以上报自定义事件数据。
显示详情接入向导
MSDK 3.3.25 版本开始,灯塔、Qimei SDK 以插件化形式提供,支持灵活替换,相关 jar、so 包括:
- beacon-android-release-x.x.x.x(版本号)-official.jar //灯塔 SDK 核心库
- libqmp.so //灯塔 SDK so
- qimei-x.x.x.x(版本号).jar //Qimei SDK 核心库
- libbeaconid.so //Qimei SDK so
MSDK 3.3.28 版本开始,Qimei SDK 中 libbeaconid.so(Qimei SDK so 文件)替换为 libqimei.so。
1 前置条件
1) 您已经在腾讯开放平台上注册游戏并通过审核,或您的腾讯接口人已经通过内部渠道帮您注册游戏。
2) 您已经按接入配置模块说明完成 接入配置。
3) 您的游戏已经具备接入灯塔的权限,灯塔接入权限申请需要由对应腾讯运营接口人联系企业微信号灯塔小秘。
2 参考Demo示例
自定义数据上报示例参考 MSDKDemo/src/com/example/module/submodule/OthersFunction.java 脚本的 callWGReportEvent 部分。
3 Qimei36 说明
Qimei36 上报功能,Android 3.3.18 版本开始支持。默认为空,需要业务联系灯塔开通权限,开通指引参考:https://iwiki.woa.com/pages/viewpage.action?pageId=417707553
- 对于 appKey,Android 端一般为 QQ 号,iOS 端为 i+QQ 号,可参考飞鹰系统---SDK 参数---灯塔 Key 字段或咨询 “灯塔小秘”。
- Qimei36 每隔 24 小时刷新一次。
自定义数据上报
1 概述
您可以通过MSDK提供接口上报自定义事件数据,上报的数据可以通过灯塔官网进行查看http://beacon.tencent.com/ (内网访问,可由对应腾讯运营接口人协助查询),上报后5分钟可以查到。
2 注册回调
无
3 调用接口
1)功能描述
上报自定义事件
2)接口声明
void WGReportEvent(unsigned char *name, std::vector<KVPair> &eventList, bool isRealTime);
3)参数说明
参数名称 | 类型 | 说明 |
---|---|---|
name | unsigned char * | 事件名称,最大长度128 |
eventList | vector<KVPair> | 事件内容, 一个key-value形式的vector, key最大长度64,value最大长度1024,key个数最大50, key建议使用"B1","B2"规则命名,以减少流量消耗 |
isRealTime | boolean | 是否实时上报,非实时上报会缓存本地,批量上报 |
4)返回值
无
5)示例代码
WGPlatform::GetInstance()->WGReportEvent((unsigned char *)"ReportEventTest",
eventList,
true);
6)特殊说明
无
7)名称解释
无
常见问题
灯塔 4.2.80.6 及以上版本(MSDK 3.3.25 及以上版本)注意事项
灯塔 4.2.80.6 开始,Qimei SDK 从灯塔 SDK 中独立出来;在 Android 端进行灯塔设置前需要先行设置 Qimei 特别字段,否则将影响灯塔信息上报。
QimeiSDK.getInstance("appkey1").getStrategy()
.enableOAID(true) // 关闭oaid采集,这里设置false
.enableIMEI(true) // 关闭imei采集,这里设置false,建议如用户授权,尽可能采集,便于复核问题
.enableIMSI(true) // 关闭imsi采集,这里设置false
.enableAndroidId(true) // 关闭android id采集,这里设置false,建议如用户授权,尽可能采集,便于复核问题
.enableMAC(true) // 关闭mac采集,这里设置false
.enableCid(true); // 关闭cid采集,这里设置false
.enableProcessInfo(true) // 关闭应用列表枚举,这里设置false,1.0.5以上版本有效
.enableBuildModel(true) // 关闭BUILD.MODEL采集,这里设置false,1.2.3以上版本有效
注意,MSDK 默认将上述字段全部设为 false,这样 MSDK 包括灯塔都不会去主动采集,而是依赖业务在用户同意后,业务自行采集可通过以下任意一种方式处理:
- 业务直接反射调用灯塔或 Qimei set 接口设置特别字段;
- 通过 MSDK 提供的 MSDKSensitive 接口来开启并设置特别字段上报;
其中,通过 MSDK 设置特别字段流程如下:
std::string sensitiveInfo = "{\"AndroidID\":\"xxx\", \"WiFiMacAddress\":\"xxx\", \"Model\":\"xxx\", \"Oaid\":\"xxx\", \"Imsi\":\"xxx\", \"Cid\":\"xxx\"}"; //json格式传入特别字段,不传入 Model 值会影响灯塔中台算法效果
MSDKSensitive::SetSensitiveInfo(sensitiveInfo); //设置特别信息
可在灯塔实时联调看到相应字段信息,具体字段 key-value 请参考:https://doc.weixin.qq.com/sheet/e3_m_FQqjSTulsZmQ?scode=AJEAIQdfAAoYCcswsTAP0AIgaEACc&tab=p142s5
灯塔集成注意事项
Android Qimei SDK 2.1.2.92 及以上版本(MSDK 3.3.30 及以上版本)注意事项
Qimei 侧建议业务开启 Qimei 自动采集或直接传递 Oaid 字段用于问题排查场景,且 Qimei 侧确认符合合规场景。
有两种方式传递 Oaid 到 Qimei:
- 开启 Qimei 自动采集
当用户同意隐私协议,且业务在 SetSensitiveInfo 入参中添加 "{\"UserAgreePrivacy\":true}" 时开启 Qimei 自动采集,自动采集字段包括:AndroidId、Oaid、ProcessInfo、Model。
- 利用 SetSensitiveInfo 直接设置 Oaid,优先级高于上述自动采集方式
若业务禁止 Qimei 自动采集,可在 SetSensitiveInfo 入参中添加 "{\"Oaid\":\"xxx\"}" 来直接设置 Oaid。
SetSensitiveInfo 接口描述参考:https://wiki.ssl.msdk.qq.com/Android/config.html#Android_Direction