• 您的App需要制订《隐私政策》,同时在用户首次启动App时展示《隐私政策》并取得用户同意。App制订的《隐私政策》,请参考《隐私合规指南》请务必确保用户同意App《隐私政策》之后,再初始化Taku SDK。
使用SDK加载和展示广告前,需要调用initSDK方法;
通过setLogEnabled方法,可以开启调试日志,方便定位SDK集成中遇到的问题;
SDK需要的appid、appkey等参数可通过开发者后台创建app之后获取
您可以通过以下代码初始化SDK,另外由于加载广告时异步进行的,所以想要获取广告的状态,请实现各广告类型的监听方法。
导入ATSDK import 'package:anythink_sdk/at_index.dart';
_initTaku() async {
await ATInitManager.initAnyThinkSDK(
appidStr: 'your appid',
appidkeyStr: 'your appkey')
}
完整的示例代码:
import 'package:anythink_sdk/at_index.dart';
import '../configuration_sdk.dart';
final InitManger = InitTool();
class InitTool{
// 打开SDK的Debug log,强烈建议在测试阶段打开,方便排查问题。
setLogEnabled() async {
ATInitManger
.setLogEnabled(
logEnabled: true,
);
}
// 设置渠道,可用于统计数据和进行流量分组
setChannelStr() async {
ATInitManger
.setChannelStr(
channelStr: "test_setChannel",
);
}
// 设置子渠道,可用于统计数据和进行流量分组
setSubchannelStr() async {
ATInitManger
.setSubChannelStr(
subchannelStr: "test_setSubchannelStr",
);
}
// 设置自定义的Map信息,可匹配后台配置的对应流量分组(App纬度)(可选配置)
setCustomDataDic() async {
ATInitManger.setCustomDataMap(
customDataMap: {
'setCustomDataDic': 'myCustomDataDic',
},
);
}
// 设置排除交叉推广App列表
setExludeBundleIDArray() async {
ATInitManger.setExludeBundleIDArray(
exludeBundleIDList: ['test_setExludeBundleIDArray'],
);
}
// 设置自定义的Map信息,可匹配后台配置的对应的流量分组(Placement纬度)(可选配置)
setPlacementCustomData() async {
ATInitManger.setPlacementCustomData(
placementIDStr: 'b5b72b21184aa8',
placementCustomDataMap: {'setPlacementCustomData': 'test_setPlacementCustomData'},
);
}
// 初始化Taku的SDK
initTaku() async {
await ATInitManger.initAnyThinkSDK(
appidStr: Configuration.appidStr,
appidkeyStr: Configuration.appidkeyStr);
}
打开SDK的Debug log,强烈建议在测试阶段打开,方便排查问题。
_setLogEnabled() async {
ATInitManager
.setLogEnabled(
logEnabled: true,
);
}
_setChannelStr() async {
ATInitManager
.setChannelStr(
channelStr: "123",
);
}
_setSubchannelStr() async {
ATInitManager
.setSubchannelStr(
subchannelStr: "456",
);
}
可匹配后台配置的对应流量分组(App纬度)(可选配置)
_setCustomDataDic() async {
ATInitManager.setCustomDataMap(
customDataMap: {
'1': 'a',
},
);
}
可匹配后台配置的对应的流量分组(Placement纬度)(可选配置)
_setPlacementCustomData() async {
ATInitManager.setPlacementCustomData(
placementIDStr: '4',
placementCustomDataMap: {'b': '4'},
);
}
设置排除交叉推广App列表,移除不需要进行广告推广的项目,传入项目的Appid(苹果后台的id)数组。
_setExludeBundleIDArray() async {
ATInitManager.setExludeBundleIDList(
exludeBundleIDList: ['3'],
);
}
注意:当开发者限制了上报的设备数据时可能会影响Taku功能的正常使用,如流量分组、交叉推广、Taku Adx等功能,请开发者谨慎设置。
deniedUploadDeviceInfo() async {
ATInitManager
.deniedUploadDeviceInfo(
deniedUploadDeviceInfoList: [
ATInitManager.aVersionNameKey(),
ATInitManager.aVersionCodeKey(),
ATInitManager.aPackageNameKey(),
ATInitManager.aAppVersionNameKey(),
ATInitManager.aAppVersionCodeKey(),
ATInitManager.aBrandKey(),
ATInitManager.aModelKey(),
ATInitManager.aScreenKey(),
ATInitManager.aNetworkTypeKey(),
ATInitManager.aMNCKey(),
ATInitManager.aMCCKey(),
ATInitManager.aLanguageKey(),
ATInitManager.aTimeZoneKey(),
ATInitManager.aUserAgentKey(),
ATInitManager.aOrientKey(),
ATInitManager.aIDFAKey(),
ATInitManager.aIDFVKey(),
ATInitManager.aANDROID(),
ATInitManager.aGAID(),
ATInitManager.aINSTALLER(),
ATInitManager.aMAC(),
ATInitManager.aIMEI(),
ATInitManager.aOAID(),
]);
});
}
参数说明:
| Key | Note |
|---|---|
| ATInitManager.aVersionNameKey() | 系统版本名 |
| ATInitManager.aVersionCodeKey() | 系统版本号 |
| ATInitManager.aPackageNameKey() | 应用包名 |
| ATInitManager.aAppVersionNameKey() | 应用版本名 |
| ATInitManager.aAppVersionCodeKey() | 应用版本号 |
| ATInitManager.aBrandKey() | 设备品牌 |
| ATInitManager.aModelKey() | 设备型号 |
| ATInitManager.aScreenKey() | 屏幕分辨率 |
| ATInitManager.aNetworkTypeKey() | 网络类型 |
| ATInitManager.aMNCKey() | 移动网络代码 |
| ATInitManager.aMCCKey() | 移动国家代码 |
| ATInitManager.aLanguageKey() | 系统语言 |
| ATInitManager.aTimeZoneKey() | 时区 |
| ATInitManager.aUserAgentKey() | User Agent |
| ATInitManager.aOrientKey() | 屏幕方向 |
| ATInitManager.aIDFAKey() | idfa |
| ATInitManager.aIDFVKey() | idfv |
| ATInitManager.aANDROID() | Android ID |
| ATInitManager.aGAID() | Google Ad ID |
| ATInitManager.aINSTALLER() | 应用安装来源 |
| ATInitManager.aMAC() | MAC地址 |
| ATInitManager.aIMEI() | 国际移动设备识别码 |
| ATInitManager.aOAID() | OAID |