什么是调试设备?

调试设备用于测试试验分组的策略是否被正确下发。一旦设备被接入到某个试验分组,将固定命中当前的分组策略,以便我们观测该策略的实际效果是否满足试验要求。

  1. 调试设备不受试验层内流量互斥的逻辑约束,但一台设备在一个试验中只能添加到其中一个分组。
  2. 调试设备在试验状态为【调试中】、【运行中】、【运行中(暂停)】、【已发布】、【已发布(暂停)】状态下生效,调试设备如从试验移出后也将被正常分流。
  3. 调试设备命中试验不会触发 $ABTesttrigger事件,即产生的数据不会被计入试验报告中。

调试设备管理

在调试设备管理中,可以进行常用调试设备的管理。

新建调试设备

设备名称:支持对设备自定义命名,设备名称不能重复。长度不超过 100 字,支持输入中文、英文、数字、下划线、中划线、引号、双引号,不支持特殊字符。调试设备个数限制,每个项目内,最多300个。

ID录入:录入设备ID或登录ID,设备唯一标识。移动设备(Android和iOS)支持扫码录入。

分组:可选择已有的分组。

备注:支持添加备注信息,长度不超过200字。

批量新增调试设备

分组:可选择已有的分组。

ID录入:录入设备ID或登录ID,设备唯一标识,以英文逗号分隔。保存后会生成多个设备信息。

分组管理调试设备

在调试设备管理页面,点击”分组管理”,进入设备分组管理页面:

创建分组:点击“+创建分组”,支持中英文、数字、下划线,长度不超过20个字符,最多可支持30个自建分组。

重命名:重命名分组,支持中英文、数字、下划线,长度不超过20个字符。

删除:如该分组下没有设备,可删除自建分组;如该分组下有设备,删除时需要将设备移动到其他的分组下。

在试验分组中选择调试设备

搜索设备:支持按照设备名称和设备ID/登录ID进行模糊搜索;

选择设备:支持多选和全选,在一个试验中,同一台设备只能添加到一个分组中。

快速新建调试设备:支持输入设备名称、分组和设备ID/登录ID 进行快速创建调试设备。

在发布计划中选择调试设备

在发布计划页面,选择发布的策略组后,将自动显示之前试验运行中时该组的调试设备,可以删除自带的设备、新增选择其他设备。

搜索设备:支持按照设备名称和设备ID/登录ID进行模糊搜索;

选择设备:支持多选和全选,在一个试验中,同一台设备只能添加到一个分组中。

如何获取调试设备的设备ID/登录ID?

神策A/B Testing 使用设备的distinct_id作为设备标识,录入白名单前,首先需要获取设备的distinct_id,可以通过以下三种方式进行获取:

通过日志方式获取 distinct_id

Android端

初始化 SDK 时,进行以下配置,即可打开 SDK 的日志输出功能:

// 打开 SDK 的日志输出功能
saConfigOptions.enableLog(true); 

触发任意事件复制 distinct_id。

iOS 端

初始化 SDK 时,进行以下配置,即可打开 SDK 的日志输出功能:

// 打开 SDK log 功能
options.enableLog = YES;

触发任意事件复制 distinct_id

web 端

SDK 初始化时,将 show_log 设置为 true 即可打开日志输出功能。页面上有事件触发时,浏览器开发者工具会打印采集的事件信息。

微信小程序

集成神策分析微信小程序 SDK 后,在开发者工具控制台中查看任意一条数据,可以获取当前用户的 distinct_id(设备ID)。在开发版及体验版中,通过手机打开控制台也可以通过类似方式获取到 distinct_id。

通过动态调试模式获取 distinct_id

此方法只适用于 iOS 和 Android 端设备。

Scheme 回调处理

在 AppDelegate 的 - application:openURL:options:方法中调用 - handleSchemeUrl: 对神策分析 Scheme 进行处理:

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
    if ([[SensorsAnalyticsSDK sharedInstance] handleSchemeUrl:url]) {
        return YES;
    }
    return NO;
}

 扫码获取 distinct_id

在右上角找到【数据中心】→ 【数据接入】→ 【Debug 实时数据查询】→ 【设备调试模式】,然后进行扫码获取 distinct_id

通过扫码录入调试设备

Android和iOS设备直接通过扫描二维码来进行调试设备的创建。(具体步骤按照页面提示操作)