Skip to main content

流量分组

一、流量分组说明#

为帮助开发者实现精细化变现,从 Android V5.4.0 和 iOS V5.1.0 开始, TradPlus 支持多种分组规则。#

1、TradPlus 上报数据#

以下数据由TradPlus SDK上报,开发者不需要处理。

类别参数类型条件规则数量描述
app应用版本version包括、不包括1包括和不包括时,可填多个版本号,用英文逗号分隔。
app应用安装时间int范围、>、<1从第一次初始化TradPlus SDK开始算起
appSDK版本version包括、不包括 、范围、>、<1TradPlus SDK版本,包括和不包括时,可填多个版本号,用英文逗号分隔。>和<时,只能填写一个。
deviceIDFAstring包括1针对iOS14无法获取时,我们可以通过用户是否授权IDFA来创建一个流量分组归类这些设备。
device设备IDstring包括1web端可填多个设备ID ,用英文逗号分隔,设备ID可以是 IDFA, IDFV, GAID, OAID
device系统版本version包括、不包括 、>、<1手机系统版本,包括和不包括时,可填多个系统版本号,用英文逗号分隔。>和<时,只能填写一个
device设备类型string(ignoreCase)包括、不包括1可选择iPhone或iPad,可多选
device设备制造商string(ignoreCase)包括、不包括1举例Huawei ,可多选
device网络连接类型string包括1web端可多选,可取值为:WiFi,2G,3G,4G,5G

2、应用上报数据 #

以下数据由开发者根据需要,通过sdk接口上报。如果不上报,如下规则将无法在中介组中使用。

参数Key类型条件规则数量描述
自定义用户IDuser_idstring包括1Web端可输入多个ID,英文逗号分隔。另外,TradPlus 可基于此user id提供设备层级的变现数据(API)。
年龄user_ageint范围 、>、<, =多个输入数字(0-99), 单位 岁
性别user_genderstring=1web端只能单选,可取值为:male、female;sdk端可传值:unknown、male、female
游戏中等级user_levelint范围 、>、<, =1
应用内付费金额user_iap_amountfloat范围 、>、<, =1
应用内付费币种user_iap_currencystring=1目前支持USD, CNY, EUR。 单选
应用内付费次数user_iap_countint>、<, =1
渠道channelstring包括、不包括1Web端支持填入多个渠道号,用英文逗号分隔
子渠道sub_channelstring包括、不包括1Web端支持填入多个子渠道号,用英文逗号分隔
自定义用户属性custom_xxxstring/int整数:范围,>、<, = ;字符串:包括,不包括最多5个应用通过Key-Value形式(key以’custom_’+字段名),传入自定义用户属性,如custom_username。最多支持5个。
segment tagsegment_tagstring包括1如SDK上报segment_tag,会使用指定segment的waterfall配置。此参数匹配时,会无视其他参数。最多支持1个。

二、流量分组使用#

1、设置方法#

需要在初始化SDK之后初始化广告位ID之前调用接口。

2、APP全局自定义规则设置#

平台方法
AndroidSegmentUtils.initCustomMap(customMap);
iOS[TradPlus sharedInstance].dicCustomValue = dicXXX
UnityTradPlus.initCustomMap(map);

3、Placement自定义规则设置#

平台方法
AndroidSegmentUtils.initPlacementCustomMap("placementId", customMap);
iOS_rewardedVideoAd.dicCustomValue = dicXXX
UnityTradPlus.initPlacementCustomMap("placementId", map);

4、示例#

  • Android SDK代码示例
HashMap<String, String> customMap = new HashMap<>();
customMap.put("user_gender", "male");//男性
customMap.put("user_level", "10");//游戏等级10
SegmentUtils.initCustomMap(customMap);//设置APP维度的规则,对全部placement有效
SegmentUtils.initPlacementCustomMap("placementId", customMap);//仅对该广告位有效,会覆盖APP维度设置的规则
  • iOS SDK代码示例
//应用纬度的自定义信息
[TradPlus sharedInstance].dicCustomValue = @{@"user_id":@"test user id"};
//广告位纬度的自定义信息,以激励视频为例
self.rewardedVideoAd = [[MsRewardedVideoAd alloc] init];
self.rewardedVideoAd.segmentTag = @"test segmentTag";
self.rewardedVideoAd.dicCustomValue = @{@"user_id":@"test user id2"};
[self.rewardedVideoAd setAdUnitID:_placementId isAutoLoad:YES];
...
  • Unity SDK代码示例
Dictionary<string, string> map = new Dictionary<string, string>();
map.Add("user_age", "18");//年龄18岁
map.Add("user_gender", "male");//男性
map.Add("user_level", "10");//游戏等级10
TradPlus.initCustomMap(map);//设置APP维度的规则,对全部placement有效
TradPlus.initPlacementCustomMap("placementId", map);//仅对该广告位有效,会覆盖APP维度设置的规则