跳到主要内容
版本:v3

接入问题

Q:SDK 初始化成功,为什么没有新增数据?

A:在排查之前,你要粗略了解数据上报的流程:

一、游戏 App 调 SDK 的相关接口上报数据;

二、DB 平台收到上报的数据,并在「上报明细」展示;

排查方法也是基于这个流程一步一步进行。

打开「配置」-「上报明细」,然后进行排查:

1、检查初始化是否是最早调用?若没有最早调用,请调整后重试;

2、观察「上报明细」功能里是否显示上报的数据;如果显示数据,则表明数据正常上报;若不显示数据,则进入 3;

3、打开手机抓包工具,测试设备是否正常上报数据;

Q:SDK 初始化成功,为什么新增数据不正确?

A:你可以使用「上报明细」功能来验证埋点上报准确性。

Q:如何查看上报的数据?

A:你可以通过「上报明细」和「埋点管理」来查看上报的数据

「上报明细」:一般在 SDK 的接入调试阶段以及在埋点测试时,你可以使用「上报明细」查看实时上报的埋点数据;

「埋点管理」:可以查看最近 7 日项目内数据接收情况,快速了解埋点上报整体情况,以及错误上报详情与抽样示例;

Q:为什么 SDK 初始化失败?

可以尝试对 gameversion 字段调试,若无值,需填入值。

Q:单机游戏的 userId 如何储存?

A:单机游戏的 userId 需要注意以下几点:

(1)iOS 得自己生成一个 ID 存到证书空间,iOS 有个存储空间,一个是应用,一个是证书(企业)。

(2)安卓尽量存到 SD 卡,用一个用户操作或者 1 分钟后调用 setUser

(3)随机生成一个唯一用户 ID,并保存到本地。

Q:为什么 SDK 接入后没有新增数据?

A:请检查 SDK 初始化是否调用成功,另外初始化应该最早调用。若初始化失败,则根据失败日志做对应处理。

Q:服务端和客户端都需要传递充值数据么?

A:在服务端和客户端选择一种方式传递充值数据即可。若同时传递,则充值数据会翻倍。

Q:为什么服务端传递充值数据 TapDB 页面没有显示收入或者收入比实际要多?

A:首先服务端和客户端的接口只能用其中一个(若都使用的话会展示双倍充值金额,并确保充值成功再发送充值数据),其次服务端「identify」: 「user_id」里的 user_id 和文档「纪录一个玩家」中的 setUser 里的「userId」需要保持一致。

Q:为什么实时在线数据发送后 TapDB 显示没有数据?

A:没有显示数据可能有以下几种原因:

(1)检查文件格式,参数类型(返回 400 报错说明格式不对)

(2)注意时间戳单位(秒),并且只能发送近 7 日数据,太早的数据不会保存

(3)注意:是否有必须头信息:Content-Type: application/json

Q:可以为空的参数能不填么?

A:不能,可以为空的参数填 null

Q:为什么填了 channel 在 TapDB 里找不到这个分包渠道?

A:必须要有一个新增数据 TapDB 才能接收到这个渠道,才能在这个页面里显示这个分包渠道。

Q:TapDB 上报事件时,事件是大小写敏感的吗?

A:所有的 key 不区分大小写,所有的 value 区分大小写。事件名是 value,属性名是 key,属性值是 value。

Q:上报自定义事件时,属性类型必须和登记的完全一致吗?是否有什么兼容策略?

A:必须完全一致,无兼容策略。错误类型的会被 agent 直接当做脏数据抛弃

Q:能否进行私有化部署?

A:暂时不支持私有化部署。但我们会保证你的数据安全。

Q:如何设置权限?

A:在「企业设置」-「权限管理」-「编辑成员」可以对相应账号进行编辑和权限去除操作。

Q:自定义事件上报后,后台查不到数据

A:请先检查代码中是否设置了 user_id 。如果不确定的话可以去后台使用 SQL 查询,在结果中可以看到曾经上报过的 user_id。

 SQL 查询地址

SELECT * FROM hive_saas1.tapdb."users"
WHERE user_id LIKE'%dTJTp6sA+OWsZ7Jf0JmGg==%'
LIMIT 100

检查上报的 user_id 里有没有需要上报的用户的 user_id。