# 三方数据
从v2.8.0开始支持三方数据接入功能,如果接入的SDK版本大于等于2.8.2,需要引入三方数据插件:
WARNING
2.8.2对应插件版本1.0.0,2.8.3需要插件版本大于等于1.1.0。
implementation 'cn.thinkingdata.android:TAThirdParty:2.0.0'
以下是同步多个平台数据的示例代码:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.APPS_FLYER | TDThirdPartyType.ADJUST);
如果需要增加额外参数,可以使用
enableThirdPartySharing(int var1, Map<String, Object> var2)
,该API不支持位运算
如果使用了 proguard,为了防止功能失效,需要在配置文件中加入以下内容:
-dontwarn cn.thinkingdata.thirdparty.**
-keep class cn.thinkingdata.thirdparty.** { *; }
-keep class cn.thinkingdata.module.routes.** { *; }
# 1. Appsflyer
在AppsFlyer SDK调用start方法之前调用API:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.APPS_FLYER)
注册创角色之后(可选):
TDAnalytics.login("account_id")
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.APPS_FLYER)
每次调用了TE的login
方法或者identify
方法,您需要同步调用enableThirdPartySharing更新用户标识。
注意:由于AppFlyer的setAdditionalData每次调用,会覆盖设置的用户标识。您可以通过我们提供的enableThirdPartySharing
方法设置参数:
Map<String, Object> additionalData = new HashMap<>();
additionalData.put("af_test_key1", "test1");
additionalData.put("af_test_key2", "test2");
TDAnalytics.enableThirdPartySharing(
TDThirdPartyType.APPS_FLYER,
additionalData
)
# 2. Adjust
在Adjust SDK初始化之前调用:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.ADJUST)
注册创角色之后(可选):
TDAnalytics.login("accoount_id")
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.ADJUST)
# 3. Branch
在Branch initialize the session之前调用:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.BRANCH);
注册创角色之后(可选):
TDAnalytics.login("accoount_id")
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.BRANCH);
# 4. TopOn
在ATSDK.init之前调用:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.TOP_ON);
多次调用TE的login
或者identify
,需要再次调用enableThirdPartySharing同步数据。
注意:由于TopOn的initCustomMap每次调用,会覆盖设置的用户标识。您可以通过我们提供的enableThirdPartySharing
方法设置参数:
Map<String, Object> customMap = new HashMap<>();
customMap.put("key1", "value1");
customMap.put("key2", "value2");
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.TOP_ON, customMap);
# 5. Tradplus
在TradPlusSdk.initSdk之前调用:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.TRAD_PLUS);
# 6. IronSource
在IronSourceSdk初始化之后调用:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.IRON_SOURCE);
# 7. AppLovin
- 展示级别
在AppLovinSdk初始化之前调用:
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.APPLOVIN_IMPRESSION);
- 用户级别
如果要实现变现数据获取,您需要创建 MaxAdRevenueListener
,并复写 onAdRevenuePaid()
方法,在该方法中获取变现数据并且通过 TE SDK 的enableThirdPartySharing
进行数据上报,最后将该监听器传递给 setRevenueListener(),示例代码如下:
void onAdRevenuePaid(final MaxAd ad){
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.APPLOVIN_USER,ad);
}