5.4. 定向试验

优质
小牛编辑
137浏览
2023-12-01

定向试验

此功能为高级付费功能,请联系您的客户经理进行开通。

当您想要针对特定用户群体进行A/B测试时,可使用此功能。使用此功能,试验的各个版本只会在您选定的用户群体中展示。请注意,您不能为试验中的版本分别设定不同群体。

创建试验后,在试验开始运行之前,运行控制界面进行设置。如图所示: 定向

在此弹出界面中选择目标用户群。初次使用时,您需要先设置用户群体: 定向

选择编辑用户群体,进入以下步骤。

受众定向

设置受众时,选择一部分用户标签进行组合,目前支持与、或组合条件,和等于、大于、小于和不等于的判断条件,并支持单层括号嵌套。 此外您也可以通过代码自定义用户标签。自定义的用户标签需要通过 AppAdhoc SDK 相关 API 设置和上传,请参考SDK集成文档

定向试验

白名单

通过txt文档上传设定不参与试验的用户ID。
使用此功能,需要在SDK初始化时自定义ClientID,然后将需要屏蔽的ClientID白名单列表在此处上传。
上传的白名单列表内容只支持txt格式,以每行一用户ID的格式填写。
上传的文件大小请不要超过5M(支持名单内容大概50000个左右)。

定向

投放渠道

在Web试验中,支持通过链接参数中的渠道标签进行定向试验。举例如下:

http://www.appadhoc.com?source=xxxxx

其中参数名source表示投放渠道,参数值为不同渠道的名称。假设本次试验只针对投放于百度的流量生效,则目标参数为source=baidu。您需要进行如下配置:

1、在SDK初始化中指定投放渠道的参数key:

调用此方法,SDK将会自动抓取参数key对应的值,作为用户的渠道属性上传。

<!-- 初始化 -->
adhoc('init',{
    appKey:'your appKey',//平台获得的appKey必要
    sourceKey:'source'//渠道参数key
})

2、在AppAdhoc控制台设置定向受众组:

受众定向

3、在试验的运行控制模块中选择受众组即可(试验开始后不可更改)。

受众条件

目前AppAdhoc A/B Testing提供例如操作系统、设备型号等预定义条件。

查看全部默认条件 • OS: 用户设备的操作系统类型,包括 iOS、Android、Windows Phone、OS X、Windows 和 Linux 等;
• iOS 版本: iOS 操作系统的版本,适用于 iPhone 和 iPAD 等设备,例如 6.x、7.x、8.x 和 9.x 等版本;版本号只记录到次版本号,例如 6.1.1 属于 6.1 版本;
• Android 版本: Android 操作系统的版本,适用于安卓手机和平板设备,例如 2.x、3.x、4.x 和 5.x 等版本;版本号只记录到次版本号;
• 浏览器: 浏览器类型,适用于 Web 和 H5 页面,例如 Chrome、Firefox、Safari、Opera 和 Microsoft Edge 等浏览器;
• Chrome 浏览器版本: Chrome 浏览器的版本号;
• Firefox 浏览器版本: Firefox 浏览器的版本号;
• Safari 浏览器版本: Safari 浏览器的版本号;
• Opera 浏览器版本: Opera 浏览器的版本号;
• Microsoft Edge 浏览器版本: Microsoft Edge 浏览器的版本号;
• Referrer URL: 访问页面的 Referrer URL (引荐网址),适用于 Web 和 H5 页面;
• 国家: 用户所在的国家;
• 系统语言: 操作系统或者浏览器使用的语言;
• 市: 用户所在的城市;
• 省: 用户所在的省;
• 设备类型: 用户设备的类型,包括桌面电脑、iPhone、iPAD、其他手机和其他平板;
• 设备名称: 用户设备的名称,适用于手持设备;
• 屏幕宽度: 用户设备屏幕的宽度,适用于手持设备;
• 屏幕高度: 用户设备屏幕的高度,适用于手持设备;
• 应用版本: 应用的版本号,适用于手持设备;
• 投放渠道: 适用于web试验,通过链接中的参数匹配投放渠道;
显示更多

自定义用户标签

除了系统预定义的用户标签,您还可以通过自定义用户标签把试验定向到包含特殊属性的用户群体。

在客户端代码中开发者可以基于自定义的用户信息和属性、通过相关的 SDK API 给用户打上自定义用户标签。然后在 AppAdhoc 后台,您可以根据相应的自定义用户标签来创建包含指定自定义用户属性的试验受众。

例如,您希望针对网站的付费会员进行一次试验。那么,在页面代码中您可以根据 cookie 信息判断当前用户是否付费会员;如果是的话就打上名为 "member" 值为 "paid" 的自定义标签;否则打上名为 "member" 值为 "none" 的标签。

在创建受众时受众条件选择“自定义标签”,自定义标签的受众条件左边填写该标签的名称,这里是 "member",右边是标签的值,如果是付费会员则是 "paid",否则为 "none"。

example 1

为了方便理解,我们用2个流程图介绍一下我们平台的受众定向的机制。

预定义受众定向机制

定向

自定义受众定向机制

定向

Web 实施要点

AppAdhoc Web SDK 会自动把浏览器名称、版本、语言等系统预定义标签自动上传,自定义标签需要开发者通过相关 API 进行设置和上传。

custom key用于设置当前用户所有的自定义标签:

adhoc('init', {
    appKey: 'appKey',
    custom: {member: 'paid', gender: 'female'}
    //member:自定义标签,与平台保持一致
})

Android

AppAdhoc Android SDK 会自动把操作系统名称、版本、语言等系统预定义标签自动上传,自定义标签需要开发者通过API 进行设置和上传。

请在init方法中添加以下配置:

AdhocConfig adhocConfig = new AdhocConfig.Builder()
        //设置APP上下文(必要参数)
        .context(this)
        //设置appKey(必要参数)
        .appKey(key)
        //添加定向用户标签
        .addCustom("member", "mpaid")
        .addCustom("gender", "female")
        .build();

AdhocTracker.init(adhocConfig);

iOS

AppAdhoc iOS SDK 会自动把操作系统名称、版本、语言等系统预定义标签自动上传,自定义标签需要开发者通过API 进行设置和上传。

Objective-C  |  Swift

在application:didFinishLaunchingWithOptions:方法中进行设置:

NSString *member = @"paid" ; 

在SDK启动时设置定向条件:

AdhocSDKConfig *config = [AdhocSDKConfig defaultConfig];
config.customProperty = @{@"member": member};
[AdhocSDK startWithConfigure:config options:launchOptions];

在application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject : AnyObject]?) -> Bool方法中进行设置:

et member = "paid" or "none"
var config:AdhocSDKConfig = AdhocSDKConfig.defaultConfig() as! AdhocSDKConfig
config.customProperty = ["member": member]]
AdhocSDK.start(withConfigure: config, options: launchOptions)