Android集成指南

BeaconReport

灯塔SDK用于上报的主类,该对象为单例对象。

初始化SDK

public void start(@NonNull Context context, @NonNull TunnelInfo info, @Nullable final BeaconConfig config)
// 参数2
 TunnelInfo(@NonNull String appKey, String version, String channelID)

例如:

BeaconConfig config = BeaconConfig.builder()
             .strictMode(false)// 是否开启严苛模式,会检查事件参数规范,并抛出异常
             .logAble(true)//是否打开日志
             // 设置用于上报的OKHttpClient(可以与业务共用一个Client),该项也可以不设置
             .setHttpAdapter(OkHttpAdapter.create(new OkHttpClient()))
             .build();
BeaconReport beaconReport = BeaconReport.getInstance();
beaconReport.startWithTunnelInfo(this, new TunnelInfo(APP_KEY), config);

注意: 1. Context、TunnelInfo不可为空 2. 灯塔SDK内部默认使用Socket做网络通信,若传入OKHttpClient会优先使用https上报,建议使用OKHttp。 3. 打开日志后,qimei将以Toast的形式弹出,并复制到剪贴板。(上线前务必关闭!)

上报事件

public EventResult report(BeaconEvent beaconEvent);

例如:

若该事件符合上报规范,则错误码为0,并且返回该事件在SDK中的唯一ID(以实时和普通分别计算),若不符合上报规范则返回错误码以及信息,错误码对应表见附录。

注意: 1. 若BeaconEvent中AppKey参数传空则默认为宿主AppKey 2. EventCode不可为空! 3. params中单个value最大长度为10K,kv整体最大为45K

获取Qimei

  1. 同步获取Qimei

  1. 异步获取Qimei

例如:

其中OldQime为原来可能为androidID、imei、mac的qimei,A3字段。newQimei为标准的36位qimei,需要后台配置打开双列Qimei才会有值,对应A153字段。

注册多通道

注册多通道上报,即多份AppKey使用同一份灯塔SDK

例如:

注意:上报BeaconEvent时,必须填充和TunnelInfo中一致的AppKey。

获取灯塔采集参数

返回灯塔SDK采集到用户信息。

停止事件上报

当App处于后台或弱网需要减少灯塔SDK使用的资源时,可以停止灯塔SDK内部轮询以及网络请求。

恢复事件上报

当调用了停止事件上报后需要恢复灯塔SDK轮询时调用。

获取当前SDK版本

BeaconEvent

例如:

BeaconConfig

在初始化时传入配置,非必须传入

例如:

EventResult

EventType

Qimei

BeaconPubParams

灯塔采集信息对象

附录

  1. 事件错误码对应表

错误码

含义

0

成功

101

事件被后台配置抽样

102

事件模块功能被关闭

103

事件被提交到DB失败

104

当前事件没有对应的通道

105

事件整体kv字符串大于45K

106

事件名为空

Last updated

Was this helpful?