Note: The log function must be turned off before the app goes live.
ATSDK.setNetworkLogDebug(true);
After enabling the log switch:
"secmtp" as the tag to view the SDK logs.anythink: ****************************************************************************
anythink: GAID(ADID): b796a53f-61bf-4e91-bc67-d505cdb97cf8 , AndroidID: f669f2b7137d82b9
anythink: ****************************************************************************
Log Example:
anythink_network:
╔═══════════════════════════════════════════════════════════════════════════════════════
║ {
║ "placementId": "b5bbdc725768fa", // The placement ID that initiated the load
║ "adType": "inter", // The ad type that initiated the load
║ "mixedFormatAdType": -1,
║ "action": "request_result", // Action after initiating ad load: request (ad request), request_result (ad return result), impression (ad display), click (ad click), close (ad close)
║ "refresh": 0,
║ "result": "fail", // Result parameter, success (successful), fail (failed)
║ "segmentId": 0, // The traffic group of the current ad source. 0 indicates the default group.
║ "adSourceId": "1423289", // Ad source ID
║ "position": 0, // The ranking position of the current ad source under the placement
║ "networkType": 6, // The unique ID used by TopOn to distinguish third-party ad networks. The mapping can be viewed at (https://docs.toponad.com/#/zh-cn/android/android_doc/android_access_doc?id=network_firm_id)
║ "networkName": "Mintegral", // Ad network name
║ "networkVersion": "MAL_16.1.41", // Ad network SDK version
║ "networkUnit": "{\"is_video\":\"0\",\"video_muted\":\"0\",\"suport_video\":\"1\",\"appkey\":\"ef13ef712aeb0f6eb3d698c4c08add96\",\"unitid\":\"1726152\",\"appid\":\"100947\"}", // The configuration of this ad source in the TopOn dashboard (corresponding to the app and placement information of the third-party ad network)
║ "isHB": 0, // Whether it is a header bidding ad source
║ "msg": "code:[ 4001 ]desc:[ Return Ad is empty. ]platformCode:[ ]platformMSG:[ EXCEPTION_UNIT_ADTYPE_ERROR ]", // If a load failure occurs, the complete error information will be output here
║ "hourly_frequency": 0, // Number of impressions in the current hour
║ "daily_frequency": 0, // Number of impressions in the current day
║ "network_list": "6,6,6", // The list of IDs of the currently requested third-party ad networks, separated by ","
║ "request_network_num": 1, // Indicates how many third-party ad network ad source loads are initiated simultaneously (corresponds to the parallel request count in the TopOn dashboard Advanced Settings)
║ "handle_class": "com.anythink.network.mintegral.MintegralATInterstitialAdapter" // The class name that calls the ad network API
║ }
╚═══════════════════════════════════════════════════════════════════════════════════════
TUSDK.setNetworkLogDebug(true);
After enabling the log switch:
"thinkup" as the tag to view the SDK logs.thinkup: ****************************************************************************
thinkup: GAID(ADID): b796a53f-61bf-4e91-bc67-d505cdb97cf8 , AndroidID: f669f2b7137d82b9
thinkup: ****************************************************************************
Log Example:
thinkup_network:
╔═══════════════════════════════════════════════════════════════════════════════════════
║ {
║ "placementId": "b5bbdc725768fa", // The placement ID that initiated the load
║ "adType": "inter", // The ad type that initiated the load
║ "mixedFormatAdType": -1,
║ "action": "request_result", // Action after initiating ad load: request (ad request), request_result (ad return result), impression (ad display), click (ad click), close (ad close)
║ "refresh": 0,
║ "result": "fail", // Result parameter, success (successful), fail (failed)
║ "segmentId": 0, // The traffic group of the current ad source. 0 indicates the default group.
║ "adSourceId": "1423289", // Ad source ID
║ "position": 0, // The ranking position of the current ad source under the placement
║ "networkType": 6, // The unique ID used by TopOn to distinguish third-party ad networks. The mapping can be viewed at (https://docs.toponad.com/#/zh-cn/android/android_doc/android_access_doc?id=network_firm_id)
║ "networkName": "Mintegral", // Ad network name
║ "networkVersion": "MAL_16.1.41", // Ad network SDK version
║ "networkUnit": "{\"is_video\":\"0\",\"video_muted\":\"0\",\"suport_video\":\"1\",\"appkey\":\"ef13ef712aeb0f6eb3d698c4c08add96\",\"unitid\":\"1726152\",\"appid\":\"100947\"}", // The configuration of this ad source in the TopOn dashboard (corresponding to the app and placement information of the third-party ad network)
║ "isHB": 0, // Whether it is a header bidding ad source
║ "msg": "code:[ 4001 ]desc:[ Return Ad is empty. ]platformCode:[ ]platformMSG:[ EXCEPTION_UNIT_ADTYPE_ERROR ]", // If a load failure occurs, the complete error information will be output here
║ "hourly_frequency": 0, // Number of impressions in the current hour
║ "daily_frequency": 0, // Number of impressions in the current day
║ "network_list": "6,6,6", // The list of IDs of the currently requested third-party ad networks, separated by ","
║ "request_network_num": 1, // Indicates how many third-party ad network ad source loads are initiated simultaneously (corresponds to the parallel request count in the TopOn dashboard Advanced Settings)
║ "handle_class": "com.thinkup.network.mintegral.MintegralTUInterstitialAdapter" // The class name that calls the ad network API
║ }
╚═══════════════════════════════════════════════════════════════════════════════════════
Note:
- If the result field of all action type logs is success, then the ad network is integrated correctly.
- If the result field of a certain log is fail, it means an error occurred in that ad behavior. You need to check the content of the msg field in the log, which has the following format:
"code[ " + code + " ],desc[ " + desc + " ],platformCode[ " + platformCode + " ],platformMSG[ " + platformMSG + " ]"
code: TopOn SDK internal error code
desc: TopOn SDK internal error description
platformCode: Third-party ad network error code (the error code to check when an ad has no fill)
platformMsg: Third-party ad network error message (the error message to check when an ad has no fill)
You can query the relevant TopOn Error Codes based on code, desc. If code=4001, you need to troubleshoot based on platformCode, platformMSG by checking the Third-Party Ad Network Error Codes & FAQ.
Note:
- Supports detection and use after integrating the TopOn SDK.
- The test tool is only used for checking SDK integration and cannot replace the APP's own ad logic testing.
- After testing is complete and before going live, the relevant code that calls the test tool must be removed.
- SDK version requirement: v6.2.70 and above.
| TopOn SDK Version | Test Tool Version | Description |
|---|---|---|
| v6.6.21 and above (Recommended) | v1.1.5 | Compatible with higher SDK versions, optimized known issues |
| v6.5.50 and above | v1.1.3 | Compatible with higher SDK versions, optimized known issues |
| v6.4.88 and above | v1.1.2 | Compatible with higher SDK versions, optimized known issues |
| v6.4.87 and below | v1.1.0 | Optimized known issues |
💡Tips: When using the test tool for testing, focus on the following:
- Check whether the integration display of the ad network's SDK is correct.
- Whether the requests, impressions, and clicks for each ad format of the ad network are normal.
(1) Refer to the TopOn SDK Integration Guide to integrate the SDK.
(2) Import the test tool and add the dependency in build.gradle:
repositories {
maven {
url "https://jfrog.anythinktech.com/artifactory/debugger"
}
}
dependencies {
// Debugger UI Tools
implementation 'com.anythink.sdk:debugger-ui-tpn:1.1.3'
}
(3) Launch the test tool
Note: The following method can only be used to access the test tool after initializing the TopOn SDK.
ATDebuggerUITest.showDebuggerUI(context);
repositories {
maven {
url "https://jfrog.anythinktech.com/artifactory/debugger"
}
}
dependencies {
// Debugger UI Tools
implementation 'com.thinkup.sdk:debugger-ui:1.1.3'
}
(3) Launch the test tool
Note: The following method can only be used to access the test tool after initializing the TopOn SDK.
TUDebuggerUITest.showDebuggerUI(context);

💡Tips: If GAID is empty, the test tool cannot be used normally for testing. If it is empty, please check:
Whether the test phone has Google services installed.
Whether the following methods have been called in the project; both methods will restrict GAID retrieval.
CopyATSDK.deniedUploadDeviceInfo(DeviceDataInfo.GAID); ATSDK.setGDPRUploadDataLevel(ATSDK.NONPERSONALIZED);
💡Tips: If GAID is empty, the test tool cannot be used normally for testing. If it is empty, please check:
Whether the test phone has Google services installed.
Whether the following methods have been called in the project; both methods will
restrictGAID retrieval.CopyTUSDK.deniedUploadDeviceInfo(DeviceDataInfo.GAID); TUSDK.setGDPRUploadDataLevel(TUSDK.NONPERSONALIZED);
TopOn SDK settings include two parts: Privacy Settings and Permission Settings.
(1) Privacy Settings
Device Privacy Data Restricted from Reporting, GDPR
(2) Permission Settings: The list of permissions that the app has requested.

(1) Check the integration status in the ad network list: Integration Abnormal, Integration Complete, Not Integrated.

(2) Toggle the switch to enable debug mode.

(3) Select an ad network to enter debug mode, and click the share icon in the top right corner to share the ad network information for the current page.
(4) Select the ad format of the ad network for testing.

Online ID testing supports using placements configured in the TopOn dashboard to test ads, and supports filtering ad sources under a placement for testing.
Note: After running the online ID test, switching back to the developer's app for testing requires restarting the app to avoid cache issues caused by the test placement in the app being the same as the test tool placement.
(1) Prerequisites
Log in to Dashboard -> Account Management -> Key -> SDK Debug Key(2) Getting Started
Sample code is as follows:
//1. Initialize the SDK
ATSDK.init(context, "your app id", "your app key");
//2. Set the Debug Key to enter the test tool
ATDebuggerUITest.showDebuggerUI(context, "your debug key");
//1. Initialize the SDK
TUSDK.init(context, "your app id", "your app key");
//2. Set the Debug Key to enter the test tool
TUDebuggerUITest.showDebuggerUI(context, "your debug key");
(3) Online ID List

(4) Placement Test

Note:
- For bidding ad sources, this configuration only supports Meta (Facebook) and TopOn ADX. Other bidding ad sources cannot be tested via this method.
- When testing overseas ad networks, you need to proxy to an overseas network. For InMobi, it is recommended to proxy to Southeast Asia, with India being the best. For Pangle, proxy to a non-US region. For the Meta platform, the Facebook app must be installed on the test phone, and the fill rate is relatively low, possibly requiring multiple attempts. For other overseas platforms, when loading ads, you can try proxying to the country/region where the platform is located to increase the ad fill rate.
● Meta (Bidding)
Tips:
- Meta has a high fill rate in the US.
- The Facebook app must be installed on the test device.
- Facebook must be in a logged-in state, and the account must function normally.
- The App ID and Placement ID prefixes of the Meta ad source must match.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Facebook_NETWORK).build());
// Advanced usage
ATSDK.setDebuggerConfig(context, AndroidID,new ATDebuggerConfig.Builder(Facebook_NETWORK).setNativeType(nativeType).build());
Parameter description:
nativeType: Set the native ad type. Supports the following types:
Facebook_NATIVE_SELF_RENDER: Native Ad (Self-Rendering)
Facebook_NATIVE_BANNER_TEMPLATE: Native Banner Ad (Template Rendering)
Facebook_NATIVE_TEMPLATE: Native Ad (Template Rendering)
Facebook_NATIVE_BANNER_SELF_RENDER: Native Banner Ad (Self-Rendering)
● AdMob
Tips:
- AdMob has a high fill rate in the US.
- Google Play must be available on the test device and GAID must be obtainable.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Admob_NETWORK).build());
// Advanced usage
ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Admob_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameter description:
nativeType: Set the native ad type. Supports the following types:
Admob_NATIVE_IMAGE: Image
Admob_NATIVE_VIDEO: Video
interType: Set the interstitial ad type. Supports the following types:
Admob_INTERSTITIAL_IMAGE: Interstitial Image
Admob_INTERSTITIAL_VIDEO: Interstitial Video
● Mintegral
Tips: High fill rate in Europe and the Americas.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Mintegral_NETWORK) .setInterstitial(Mintegral_INTERSTITIAL_VIDEO).build());
// Advanced usage
ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Mintegral_NETWORK).setNativeType(nativeType).build());
Parameter description:
nativeType: Set the native ad type. Supports the following types:
Mintegral_NATIVE_SELF_RENDER: Native Custom Rendering
Mintegral_NATIVE_TEMPLATE: Native Auto Rendering
● Huawei
Tips: Must use an overseas version Huawei phone (language cannot be China-Chinese, US-English) or a phone with HMS Core installed.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Huawei_NETWORK).build());
// Advanced usage
ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Huawei_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameter description:
nativeType: Set the native ad type. Supports the following types:
Huawei_NATIVE_VIDEO: Video
Huawei_NATIVE_IMAGE: Small Image
Huawei_NATIVE_BIG_IMAGE: Large Image
interType: Set the interstitial ad type. Supports the following types:
Huawei_INTERSTITIAL_IMAGE: Interstitial Image
Huawei_INTERSTITIAL_VIDEO: Interstitial Video
● ADX
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Adx_NETWORK).build());
// Advanced usage
ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Adx_NETWORK).setNativeType(nativeType).setInterstitial(interType).setBannerType(bannerType).build());
Parameter description:
nativeType: Set the native ad type. Supports the following types:
ADX_NATIVE_EXPRESS_LEFT_PIC_RIGHT_TEXT: Left Image Right Text
ADX_NATIVE_EXPRESS_LEFT_TEXT_RIGHT_PIC: Left Text Right Image
ADX_NATIVE_EXPRESS_TOP_PIC_BOTTOM_TEXT: Top Image Bottom Text
ADX_NATIVE_EXPRESS_TOP_TEXT_BOTTOM_PIC: Top Text Bottom Image
ADX_NATIVE_SELF_RENDER: Self-Rendering
interType: Set the interstitial ad type. Supports the following types:
Adx_INTERSTITIAL_FULL_SCREEN: Full-Screen Interstitial
Adx_INTERSTITIAL_HALF_SCREEN: Half-Screen Interstitial
bannerType: Set the banner ad type. Supports the following types:
ADX_BANNER_SIZE_320_50: 320x50 size
ADX_BANNER_SIZE_320_90: 320x90 size
ADX_BANNER_SIZE_300_250: 300x250 size
ADX_BANNER_SIZE_728_90: 728x90 size
● InMobi
Tips: InMobi has a high fill rate in India.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Inmobi_NETWORK).build());
● AppLovin
Tips: High fill rate in China and the US.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Applovin_NETWORK).build());
● Chartboost
Tips: High fill rate in China and the US.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Chartboost_NETWORK).build());
● IronSource
Tips: High fill rate in China.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Ironsource_NETWORK).build());
● Unity Ads
Tips: High fill rate in the US.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(UnityAds_NETWORK).build());
● Vungle
Tips
- Test suggestion: First VPN to the US, then uninstall and reinstall the app before loading the ad.
- If the bidding debug mode still cannot succeed, you can add a test device in the Vungle dashboard. How to use test mode and test devices – Vungle CN
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Vungle_NETWORK).build());
● Start.io
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(StartApp_NETWORK).build());
● MyTarget
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(MyTarget_NETWORK).build());
● Fyber
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Fyber_NETWORK).build());
● Pangle
Tips: High fill rate in South Korea and Japan.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(Pangle_NETWORK).build());
● Bigo
Tips: High fill rate in Singapore.
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(BigoAds_NETWORK).build());
● Kwai
// General setup
ATSDK.setDebuggerConfig(context, GAID, new ATDebuggerConfig.Builder(KWAI_NETWORK).build());
● Meta (Bidding)
Tips
- Meta has a high fill rate in the US.
- The Facebook app must be installed on the test device.
- Facebook must be logged in and the account must be usable.
- The App ID and Placement ID prefix of the Meta ad source must be consistent.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Facebook_NETWORK).build());
// Advanced usage
TUSDK.setDebuggerConfig(context, AndroidID,new TUDebuggerConfig.Builder(Facebook_NETWORK).setNativeType(nativeType).build());
Parameters:
nativeType: Set the native ad type. Supports the following types:
Facebook_NATIVE_SELF_RENDER: Native Ad (Self-Rendering)
Facebook_NATIVE_BANNER_TEMPLATE: Native Banner Ad (Template Rendering)
Facebook_NATIVE_TEMPLATE: Native Ad (Template Rendering)
Facebook_NATIVE_BANNER_SELF_RENDER: Native Banner Ad (Self-Rendering)
● AdMob
Tips
- AdMob has a high fill rate in the US.
- The test device must have Google Play and be able to obtain the GAID.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Admob_NETWORK).build());
// Advanced usage
TUSDK.setDebuggerConfig(context, AndroidID, new TUDebuggerConfig.Builder(Admob_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameters:
nativeType: Set the native ad type. Supports the following types:
Admob_NATIVE_IMAGE: Image
Admob_NATIVE_VIDEO: Video
interType: Set the Interstitial ad type. Supports the following types:
Admob_INTERSTITIAL_IMAGE: Interstitial Image
Admob_INTERSTITIAL_VIDEO: Interstitial Video
● Mintegral
Tips: High fill rate in Europe and the Americas.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Mintegral_NETWORK) .setInterstitial(Mintegral_INTERSTITIAL_VIDEO).build());
// Advanced usage
TUSDK.setDebuggerConfig(context, AndroidID, new TUDebuggerConfig.Builder(Mintegral_NETWORK).setNativeType(nativeType).build());
Parameters:
nativeType: Set the native ad type. Supports the following types:
Mintegral_NATIVE_SELF_RENDER: Native Custom Rendering
Mintegral_NATIVE_TEMPLATE: Native Auto Rendering
● Huawei
Tips: A Huawei phone with an overseas version (language cannot be China-Chinese, US-English) or a phone with HMS Core installed is required.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Huawei_NETWORK).build());
// Advanced usage
TUSDK.setDebuggerConfig(context, AndroidID, new TUDebuggerConfig.Builder(Huawei_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameters:
nativeType: Set the native ad type. Supports the following types:
Huawei_NATIVE_VIDEO: Video
Huawei_NATIVE_IMAGE: Small Image
Huawei_NATIVE_BIG_IMAGE: Large Image
interType: Set the Interstitial ad type. Supports the following types:
Huawei_INTERSTITIAL_IMAGE: Interstitial Image
Huawei_INTERSTITIAL_VIDEO: Interstitial Video
● ADX
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Adx_NETWORK).build());
// Advanced usage
TUSDK.setDebuggerConfig(context, AndroidID, new TUDebuggerConfig.Builder(Adx_NETWORK).setNativeType(nativeType).setInterstitial(interType).setBannerType(bannerType).build());
Parameters:
nativeType: Set the native ad type. Supports the following types:
ADX_NATIVE_EXPRESS_LEFT_PIC_RIGHT_TEXT: Image Left, Text Right
ADX_NATIVE_EXPRESS_LEFT_TEXT_RIGHT_PIC: Text Left, Image Right
ADX_NATIVE_EXPRESS_TOP_PIC_BOTTOM_TEXT: Image Top, Text Bottom
ADX_NATIVE_EXPRESS_TOP_TEXT_BOTTOM_PIC: Text Top, Image Bottom
ADX_NATIVE_SELF_RENDER: Self-Rendering
interType: Set the Interstitial ad type. Supports the following types:
Adx_INTERSTITIAL_FULL_SCREEN: Full-Screen Interstitial
Adx_INTERSTITIAL_HALF_SCREEN: Half-Screen Interstitial
bannerType: Set the Banner ad type. Supports the following types:
ADX_BANNER_SIZE_320_50: 320x50 Size
ADX_BANNER_SIZE_320_90: 320x90 Size
ADX_BANNER_SIZE_300_250: 300x250 Size
ADX_BANNER_SIZE_728_90: 728x90 Size
● InMobi
Tips: InMobi has a high fill rate in India.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Inmobi_NETWORK).build());
● AppLovin
Tips: High fill rate in China and the US.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Applovin_NETWORK).build());
● Chartboost
Tips: High fill rate in China and the US.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Chartboost_NETWORK).build());
● IronSource
Tips: High fill rate in China.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Ironsource_NETWORK).build());
● Unity Ads
Tips: High fill rate in the US.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(UnityAds_NETWORK).build());
● Vungle
Tips
- Test suggestion: First VPN to the US, then uninstall and reinstall the app before loading the ad.
- If the bidding debug mode still cannot succeed, you can add a test device in the Vungle dashboard. How to use test mode and test devices – Vungle CN
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Vungle_NETWORK).build());
● Start.io
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(StartApp_NETWORK).build());
● MyTarget
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(MyTarget_NETWORK).build());
● Fyber
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Fyber_NETWORK).build());
● Pangle
Tips: High fill rate in South Korea and Japan.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(Pangle_NETWORK).build());
● Bigo
Tips: High fill rate in Singapore.
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(BigoAds_NETWORK).build());
● Kwai
// General setup
TUSDK.setDebuggerConfig(context, GAID, new TUDebuggerConfig.Builder(KWAI_NETWORK).build());
For platforms not supported by debug mode, you can use the test IDs from the TopOn Demo for testing.
placementId.(1) Switch the network to the EU region.
(2) Action: Start the app for the first time. Expected: A GDPR consent dialog pops up.
(3) Action: Do not click any button; kill the app and restart. Expected: The GDPR consent dialog pops up again (as long as consent is not granted, the consent dialog will appear every time the app starts).
(4) Action: After clicking to authorize GDPR, kill the app and restart. Expected: The GDPR consent dialog does not appear.