Android SDK 集成文档

查看DEMO

Android SDK API 参考

下载SDK

更新时间:2016/11/17

adhoc-min.jar  2.3.0

导入SDK

将下载得到的 SDK JAR拖入到的AndroidStudio /Eclipse 工程根目录libs中(没有则新建),右键Add as Library添加到库:

导入SDK

加入网络和SDCARD读写权限

在项目中找到项目配置文件 AndroidManifest.xml,加入网络访问权限和SDCARD读写权限:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

SDK初始化

创建Appllication 类,并在OnCreate()中加入下面代码:

SDK初始化

需要在AndroidManifest.xml 里指定类名:

SDK初始化

如果已经创建过Application类,跳过新建步骤,直接在onCreate加入下面代码即可。

AdhocTracker.init(this, "your_app_key")

其中,“your_app_key” 是在登录 AppAdhoc 后,创建“应用”之后获得的授权标识。

注意:试验“应用”此时应该提前创建完毕。可在AppAdhoc控制台应用列表找到,如下图红线部分:

your_app_key

请勿在SDK基础上进行自行封装,以免影响到试验逻辑,造成试验无法正常运行。如果确有自行封装的需求,请与客户经理联系,获取注意事项。

编程模式:根据“试验变量”展示相应内容

试验变量的值决定了展示的内容或程序的逻辑。试验变量在编程模式试验中创建,可视化试验无需此步骤。

注意:试验变量值应由PM或相关A/B Testing需求制定人员在后台提前录入完毕,如下图“版本管理”红线部分:

your_app_key

在调用SDK之前,记得引用头文件:

import com.adhoc.adhocsdk.AdhocTracker;

展示相应内容需要两步:

1.在生命周期 onStart()的获取AppAdoc 后台试验变量,在相应的测试页面添加代码

ExperimentFlags flags = AdhocTracker.getExperimentFlags(this);

2.再根据所获取的“试验变量”设置来执行不同版本的代码

//获取Boolean类型的试验变量isNewHomePage的值
if (flags.getBooleanFlag("isNewHomePage", false)) {
    //跳转至新首页
} else {
    //跳转至新旧首页
}

其中,'isNewHomePage' 即是“试验变量“,应与上图中红线标识保持一致。

请注意在用户访问到试验页面时,需要触发所有变量才算作进入试验,否则将不会上报试验数据。在此示例中,“flags.getBooleanFlag(“isNewHomePage”, false)”算作触发变量“isNewHomePage”。

上报指标

指标用于量化试验结果的好坏,AppAdhoc 后台中的试验图表根据此数据生成。 在可视化试验中,您也可以通过此方法定义上报指标。

注意:指标值应由PM或相关AB Test需求制定人员在后台提前录入完毕,如下图“优化指标”红线部分:

优化指标

比如在进入某一逻辑分支后,可以统计点击次数。将上图中的指标“clickTimes”传入函数track实现上报指标, 每次累加1:

AdhocTracker.incrementStat(this," clickTimes ", 1);

混淆相关

在proguard-rules.txt文件中加入:

-keep class com.adhoc.** {*;}

对于 SDK 2.0.5 及之后版本还需加入如下代码:

-keep class android.support.v4.**{*;}

集成调试

集成调试只是为验证SDK的集成是否成功(并不是真正开始试验!),详见移动调试工具

开始试验

恭喜,您完成了AppAdhoc AB Testing Web SDK的埋点集成工作,请通知PM或相关AB Test需求制定人员,点下开始试验按钮吧!

注意:确保app_key, 试验变量字符串,指标字符串与后台截图处一一对应,否则可能出现异常或无试验数据情况。

ExperimentFlag类提供状态检测api,getFlagState()返回结果EXPERIMENT_OK为正常,EXPERIMENT_NULL说明未取到flag。

高级功能 自定义受众定向(需要联系管理员开启)

AppAdhoc Web SDK 会自动把浏览器名称、版本、语言等用户标签自动上传,开发者也可以根据需要给当前用户打上合适的自定义标签,进而实现将不符合条件的用户排除在此次试验之外。比如只想要女性用户,或30岁以下的用户参与试验等。

注意:自定义受众定向条件应由PM或相关AB Test需求制定人员在后台提前录入完毕,如下图“受众定向”红线部分。

在运行控制/右侧定向试验:

受众定向

选择分组,点击编辑用户群:

受众定向

即得到受众条件的key,在下图例子中,“sex”是key:

受众定向

最好在AdhocTracker.init() 方法调用前进行设置:

String sex = "male" ; //根据您自身的业务获取的用户性别
HashMap map = new HashMap();
map.put("sex ", sex);
AdhocTracker.setCustomStatParameter(mContext,map);

API 参考

android SDK API 参考

results matching ""

    No results matching ""