Menu

How to test ads

After developers import Taku SDK, they need to conduct a series of tests to ensure the correct integration of Taku SDK. Here are a few points, and developers can also add them according to their own needs. Test content:

    1. SDK integration verification: Verify whether the advertising platform SDK integration is correct
    2. Other verification: Call the API configuration server to verify the bidding advertising sources, and verify the bidding result status of all bidding advertising sources at one time. This item can test the real bidding advertising source situation you configured in your APP.

1. SDK Integration verification

Before testing and verifying the integration of advertising on each platform, you must first conduct integration verification of the SDK. Please first call the corresponding code according to the following instructions, and then follow the logs output and perform corresponding actions.

1. Call the following code at the program entry (such as the MainActivity function):

Note: Do not include this API in the package submitted for review, otherwise it may affect the listing

ATSDK.integrationChecking(applicationContext);//Note: Do not include this API in the package submitted for shelving review to avoid affecting shelving
1.Based on the output logs, check if the SDK integration of each advertising platform is normal.

Filter the tags of anything in Logcat and view the logs. Pay attention to whether the Status field under each advertising platform is Success. If it is Success, the integration of the advertising platform is correct. Otherwise, the integration is incorrect. Specific parameters need to be checked to make corresponding modifications and supplement the missing integration parts.

An example of log output is as follows:

********************************** Network Integration Status *************************************
----------------------------------------
NetworkName: Admob //The name of the aggregated advertising platform
SDK: VERIFIED //Verify if the aggregation SDK is correct, display Verified if correct, otherwise display NOT Verified
Dependence Plugin: VERIFIED //Verify if the plugins that the advertising platform depends on exist. If correct, display Verified; otherwise, display missing configurations
Activities : VERIFIED //Verify if the Activity declaration of the advertising platform exists, display Verified if correct, otherwise display missing configuration
Providers : VERIFIED  //Verify if the provider declaration of the advertising platform exists, display Verified if correct, otherwise display missing configuration
Status: Success //Verify if all advertising platforms are integrated correctly, display Success if correct, otherwise display Failure
----------------------------------------
NetworkName: Facebook
SDK: VERIFIED
Dependence Plugin: VERIFIED
Activities : VERIFIED
Services : VERIFIED
Providers : VERIFIED
Status: Success
********************************** Network Integration Status *************************************

Please note that in order to smoothly integrate various advertising platforms, all files in the SDK compressed package downloaded from Taku must be imported into the project.

2. Testing recommendations for various advertising platforms

Based on our experience, we suggest that you configure and verify the following advertising platforms in a targeted manner.


Advertising platformSuggest VPN to specified country or regionadditional requirements
MetaAmerica1. On the testing device, it is necessary to follow the Facebook application. 2. Facebook must be logged in and the account can be used normally. 3. The prefix of the Meta advertising source's App ID and Placement ID should be consistent
AdmobAmerica1. The testing device needs to have a Google Play framework that can obtain GAID
PangleKorea, Japan-
HuaWei(海外)-1. Overseas versions of Huawei phones are required (language cannot be Chinese, US English) or HMS Core phones are installed
InmobiIndia-
MyTargetRussia-
VungleAmerica1. Check if the time has been adjusted on the testing device. 2. If the bidding debugging mode is turned on but the bidding cannot be successful, you can add the testing device to the Vungle backend How to use testing modes and testing equipment - Vungle CN 3. Suggested testing steps: First, climb over the VPN to the United States, then uninstall and reinstall the application before loading the advertisement
ChartbootsChina ,America-
AppLovinChina ,America-
MintegralAmerica-
TapjoySingapore、America-
ironSourceChina-
UnityAdsAmerica-
AdColonyChina,America-
BigoSingapore-
NendAmerica-

3. Verification of advertising sources on various advertising platforms

  • Using debugging mode, you can lock a single advertising platform and use Taku's pre configured test advertising source to test and verify the integration of the advertising platform.


  • After the testing starts, the first step is to open the SDK's logging function and obtain the testing device ID; Then call the API for each advertising platform, configure the test equipment, test advertising platform and test advertising type, and open the debugging mode; Finally, based on the results of the log output, make corresponding adjustments.


  • Note that for bidding ad sources, this configuration only supports Meta (Facebook) and Taku ADX. Other bidding advertising sources cannot be tested by calling this method. If you want to test bidding advertising sources for advertising platforms other than Meta and Taku ADX, please refer to1.3 Other verifications

3.1 Turn on the logging function of the SDK

Before initialization, add this code to output logs for obtaining detailed information, viewing error codes, and more.

Note that the logging function needs to be turned off before the application goes live.

ATSDK.setNetworkLogDebug(true);//The application must be closed before going live

After turning on the logging function, you can obtain the test device ID:

  • Open Logcat in Android Studio, filter "anything | HeadBidding" as TAG, and view SDK logs


  • When TakuSDK is initialized, the following logs are printed to obtain the device ID:


• Note: SDK version>=6.2.10, non Chinese Mainland version SDK will no longer obtain the system's AndroidId internally, and you must use a mobile phone with GAID to set the debugging mode. Ensure that there is a real printed GAID in the log, and then use the "ATSDK. setDebuggerConfiguration" method to set the GAID to debugging mode for it to take effect. If the value of Gaid is not printed, it indicates that the current phone does not have Google services and needs to be tested using a phone model with Google services.


anythink: ********************************** UA_5.9.96 *************************************
anythink: GAID(ADID): b796a53f-61bf-4e91-bc67-d505cdb97cf8 , AndroidID: f669f2b7137d82b9
anythink: ********************************** UA_5.9.96 *************************************
  • Call API, configure Android ID of test device, test advertising platform, and test advertising type


  • Each advertising platform has a separate method, and different advertising styles have different parameter configurations. Please choose the method to call based on the advertising platform and advertising style you need to test. Each advertising platform supports advertising styles, please refer to the overview of aggregation platforms


• We recommend calling the API to set before the Taku SDK initialization.


  • The advertising platform constants in the example code (such as "Mintegral-NETWORK", "Facebook NETWORK") need to be manually introduced by developers. The introduction method is: Alt+Enter (Windows) or Option+Enter (Mac). If the introduction fails, please check if there is an adapter for the corresponding platform introduced in the project.


  • After the configuration is completed, all advertising spaces on the testing device will only request the test advertising source of the specified advertising platform in the configuration. These test ad sources are pre configured by Taku.


  • Note that for bidding ad sources, this configuration only supports Meta (Facebook) and Taku ADX. Other bidding advertising sources cannot be tested by calling this method. If you want to test the bidding advertising sources of advertising platforms other than Meta and Taku ADX, please refer to 1.3 for other verifications. Attention: When testing overseas advertising platforms, it is necessary to proxy to overseas networks. InMobi recommends proxy to Southeast Asia, India is the best, Pangle proxy to non US regions, and Meta platform needs to install Facebook application on the testing phone, which has a low fill rate and may require multiple attempts. Other overseas platforms can try to load advertisements by proxy to the country or region where the platform is located, in order to improve the filling rate of advertisements.

3.2 Advertising platforms supported by debugging mode

NetworkUniversal Setting Code高级用法
MintegralATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Mintegral_NETWORK) .setInterstitial(Mintegral_INTERSTITIAL_VIDEO).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Mintegral_NETWORK).setNativeType(nativeType).build());
Parameter Description
nativeType:Set native advertising types to support the following types
Mintegral_NATIVE_SELF_RENDER: Native custom rendering
Mintegral_NATIVE_TEMPLATE:Native automatic rendering
GDTATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(GDT_NETWORK).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(GDT_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameter Description
nativeType:Set native advertising types to support the following types
GDT_NATIVE_TEMPLATE:Platform template rendering
GDT_NATIVE_SELF_RENDER:Developer self rendering
GDT_NATIVE_DRAW_TEMPLATE:Video patch advertisement (template rendering)

GDT_NATIVE_DRAW_SELF_RENDER:Video patch advertisement (self rendering)
interType:Set the type of screen insertion advertisement, supporting the following types
GDT_INTERSTITIAL:Pop up video
GDT_INTERSTITIAL_FULL_SCREEN:Full screen video
CJSATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(TT_NETWORK).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(TT_NETWORK).setNativeType(nativeType).build());
Parameter Description
nativeType:Set native advertising types to support the following types
TT_NATIVE_TEMPLATE:Information flow advertising+template rendering
TT_NATIVE_SELF_RENDER:Information flow advertising+self rendering
TT_NATIVE_DRAW_TEMPLATE:Draw information flow advertisement+template rendering
TT_NATIVE_DRAW_SELF_RENDER:Draw information flow advertisement+self rendering
BaiDuATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(BAIDU_NETWORK).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(BAIDU_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameter Description
nativeType:Set native advertising types to support the following types
BAIDU_NATIVE_SELF_RENDER:Self rendering
BAIDU_NATIVE_TEMPLATE:Template rendering
interType:Set the type of screen insertion advertisement, supporting the following types
BAIDU_INTERSTITIAL_FULL_SCREEN:Full screen video
BAIDU_INTERSTITIAL_TEMPLATE:Template screen insertion
KuaiShouATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(KS_NETWORK).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(KS_NETWORK).setNativeType(nativeType).build());
Parameter Description
nativeType:Set native advertising types to support the following types
KS_NATIVE_SELF_RENDER:Information flow advertising+self rendering
KS_NATIVE_TEMPLATE:Information flow advertising+template rendering
KS_NATIVE_DRAW:Draw Information Flow Advertising
HuaWeiATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Huawei_NETWORK).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Huawei_NETWORK).setNativeType(nativeType).setInterstitial(interType).build());
Parameter Description
nativeType:Set native advertising types to support the following types
Huawei_NATIVE_VIDEO:video
Huawei_NATIVE_IMAGE:Small picture
Huawei_NATIVE_BIG_IMAGE:Big picture
interType:Set the type of screen insertion advertisement, supporting the following types
Huawei_INTERSTITIAL_IMAGE:Insert screen image
Huawei_INTERSTITIAL_VIDEO:Insert screen video
SigmobATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Sigmob_NETWORK).build());-
MiMengATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Mimo_NETWORK).build());-
YouKeYingATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Klevin_NETWORK).build());-
ADXATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Adx_NETWORK).build());ATSDK.setDebuggerConfig(context, AndroidID, new ATDebuggerConfig.Builder(Adx_NETWORK) .setNativeType(nativeType).setInterstitial(interType).setBannerType(bannerType).build());
Parameter Description:  
nativeType:Set native advertising types to support the following types ADX_NATIVE_EXPRESS_LEFT_PIC_RIGHT_TEXT:Left picture, right text ADX_NATIVE_EXPRESS_LEFT_TEXT_RIGHT_PIC:Left text, right picture ADX_NATIVE_EXPRESS_TOP_PIC_BOTTOM_TEXT:Picture above and text below ADX_NATIVE_EXPRESS_TOP_TEXT_BOTTOM_PIC:Text above and picture below ADX_NATIVE_SELF_RENDER:SelfRender

interType:Set interestitial advertising types to support the following types Adx_INTERSTITIAL_FULL_SCREEN:Full Screen
Adx_INTERSTITIAL_HALF_SCREEN:Half Screen

bannerType:Set banner advertising types to support 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


For platforms that do not support debugging mode, the test ID of Taku Demo can be used for testing

Verify the advertising source based on the output log

After calling the API to configure the testing rules, various advertising actions can begin. From the log output of Logcat, you can see the tracking of various advertising actions.

Locate the advertising space that needs to be verified based on placementId.

The action field in the log refers to the corresponding action in the log after the advertisement is loaded, including request (advertisement request) and request_ Result (the result returned by the advertisement), impression (advertisement display), click (advertisement click), close (advertisement close).

Log example:

anythink_network:  
    ╔═══════════════════════════════════════════════════════════════════════════════════════
    ║ {
    ║     "placementId": "b5bbdc725768fa",//Initiated loading of ad slot ID
    ║     "adType": "inter",//Type of advertising space to initiate loading
    ║     "mixedFormatAdType": -1,
    ║     "action": "request_result",//Action after initiating advertisement loading: request (advertisement request), request_ Result (result returned by advertisement), impression (advertisement display), click (advertisement click), close (advertisement close)
    ║     "refresh": 0,
    ║     "result": "fail",//Result parameters, success, fail
    ║     "segmentId": 0,//The traffic group where the current advertising source is located, where 0 represents the default group
    ║     "adSourceId": "1423289", //Advertising source ID
    ║     "position": 0, //The sorting position of the current advertising source under the advertising space
    ║     "networkType": 6,//Taku is a unique ID used to distinguish third-party advertising platforms, and the corresponding relationship can be viewed(https://docs.toponad.com/#/zh-cn/android/android_doc/android_access_doc?id=network_firm_id)
    ║     "networkName": "Mintegral",//Advertising platform name
    ║     "networkVersion": "MAL_16.1.41",//Advertising Platform SDK Version
    ║     "networkUnit": "{\"is_video\":\"0\",\"video_muted\":\"0\",\"suport_video\":\"1\",\"appkey\":\"ef13ef712aeb0f6eb3d698c4c08add96\",\"unitid\":\"1726152\",\"appid\":\"100947\"}",//The configuration of this advertising source in the Taku backend (corresponding to the app and placement information of third-party advertising platforms)
    ║     "isHB": 0,//Is it a top bidding advertising source
    ║     "msg": "code:[ 4001 ]desc:[ Return Ad is empty. ]platformCode:[  ]platformMSG:[ EXCEPTION_UNIT_ADTYPE_ERROR ]",//If there is a loading failure, complete error information will be output here
    ║     "hourly_frequency": 0,//The number of times displayed in the current hour
    ║     "daily_frequency": 0,//The number of times it was displayed the day before yesterday
    ║     "network_list": "6,6,6",//The ID of the current third-party advertising platform request list, separated by ","
    ║     "request_network_num": 1,//Indicates how many third-party advertising platform ad sources are loaded simultaneously (corresponding to the number of parallel requests in the Taku backend advanced settings)
    ║     "handle_class": "com.anythink.network.mintegral.MintegralATInterstitialAdapter" //The class name for calling the advertising platform API
    ║ }
    ╚═══════════════════════════════════════════════════════════════════════════════════════
    
  • If the result field of all action type logs is successful, then the integration of the advertising platform is normal.
  • If the result field of a certain log is failed, it indicates that the advertising behavior has encountered an error. Developers need to view the content of the msg field in the log, in the following format:
"code[ " + code + " ]
,desc[ " + desc + " ]
,platformCode[ " + platformCode + " ]
,platformMSG[ " + platformMSG + " ]"

code:TakuSDK Internal error code
desc:TakuSDK Internal error code
platformCode:Error codes of third-party advertising platforms (error codes that need to be checked when the advertisement is not filled)
platformMsg:Error messages from third-party advertising platforms (error messages that need to be checked when the advertisement is not filled)

You can search for relevant information based on code and desc Taku error code,If code=4001, it needs to be queried based on PlatformCode and PlatformMSG Third party advertising platform error codes&common issues Conduct an investigation.

4. Other verifications

4.1 Server bidding advertising source verification

If you have already configured a real bidding advertisement source in your own app, you can also use the following APIs to configure testing devices and verify server bidding advertisements. Through this method, all successful and failed advertising source information can be obtained at once, making it easier to organize and check bidding advertising sources uniformly.


According to the principle of bidding advertising, bidding advertising sources need to first conduct advertising bidding, and only after the bidding is successful will they initiate advertising loading. If you want to debug the complete bidding process, you can call the following API to restart ad loading when ad bidding fails.


Note that this test does not use Taku's pre configured test ad source, but requires that you have completed the configuration of a real bidding ad source.


• Operation steps: First, you need to open the logging function of the SDK and obtain the test device ID; Then call the API, configure the test equipment, and start the bidding debugging mode; Finally, based on the results of the log output, make corresponding adjustments.


1. Open the logging function of the SDK


Before initialization, add this code to output logs for obtaining detailed information, viewing error codes, etc。

Note that the logging function needs to be turned off before the application goes live。


ATSDK.setNetworkLogDebug(true);//The application must be closed before going online

1.After turning on the logging function, you can obtain the test device ID:

  • Open Logcat in Android Studio, filter "anything | HeadBidding" as TAG, and view SDK logs
  • When TakuSDK is initialized, the following logs are printed, and the Android ID can be obtained from the logs:
anythink: ********************************** UA_5.9.96 ************************************* 
anythink: GAID(ADID): b796a53f-61bf-4e91-bc67-d505cdb97cf8 , AndroidID: f669f2b7137d82b9 
anythink: ********************************** UA_5.9.96 *************************************

2.Call API to configure the Android ID of the testing device

Please note that the methods for SDK versions 5.9.96 and below are different from those for versions 5.9.96 and beyond. In addition, the ID of each device is different, and it needs to be reset when replacing the testing equipment.


//5.9.96 and above versions
//F669f2b7137d82b9 is the Android ID of the testing device. Please use GAID for overseas versions
ATSDK.setDebuggerConfig(this, "f669f2b7137d82b9", null);

//Below version 5.9.96
//F669f2b7137d82b9 is the Android ID of the test device
ATSDK.setBiddingTestDevice("f669f2b7137d82b9");
  1. Obtain information on all bidding advertising sources based on the output log

In Logcat, using anything | HeadBidding filtering, relevant logs can be seen. The output log contains a list of successful bidding ad sources and a list of failed bidding ad sources.You can view Suggestions for testing and validation on various platforms,Adjust the configuration of advertising platforms that have failed bidding.


    ╔═══════════════════════════════════════════════════════════════════════════════════════
    ║ {
    ║     "HeadBidding Success List": [ //Successful bidding list
    ║         {
    ║             "network_firm_id": 6,
    ║             "ad_source_id": "1743362",
    ║             "content": "{\"video_muted\":\"0\",\"appkey\":\"ef13ef712aeb0f6eb3d698c4c08add96\",\"suport_video\":\"1\",\"placement_id\":\"408774\",\"unitid\":\"1729260\",\"is_video\":\"1\",\"appid\":\"100947\"}"
    ║         }
    ║     ],
    ║     "HeadBidding Fail List": [ //List of failed bids
    ║         {
    ║             "network_firm_id": 32,
    ║             "ad_source_id": "1649704",
    ║             "content": "{\"slot_id\":\"860601\",\"app_id\":\"991505\"}",
    ║             "error": "errorCode:[10102],errorMsg:[mytarget return empty]"
    ║         }
    ║     ]
    ║ }
    ╚═══════════════════════════════════════════════════════════════════════════════════════

4.2 Verification points under various advertising forms

Note: Taking Meta (Facebook) and Tencent Advertising as examples


Ad TypeplatformVerification Pointrecommendationpay attention to
Rewarded Video AdFacebook1. Display successful

2. Click to jump (download)

3. Reward for ending the video

4. Close the advertisement and return to normal game mode

5. Is the game logic normal when filling in without advertisements
Pre load the next advertisement in advance after displaying the advertisement-
Interstitial  adFacebook1. Display successful

2. Click to jump (download)

3. Close the advertisement and return to normal game mode

4. Is the game logic normal when filling in without advertisements
Pre load the next advertisement in advance after displaying the advertisement-
NativeFacebook1. Display images (videos)

2. Click

3. Advertising refresh (based on game logic)

4. Is the logic of the game without padding normal
Pre load the next advertisement in advance after retrieving the advertisement cacheCheck if the width and height are correctly set before loading native advertisements
Banner AdFacebook1. Display

2. Click

3. Is the logic of the game without padding normal

4. Advertising refresh (based on game logic)
Enable automatic refresh in "Aggregation Management - Advanced Settings"Check if the width and height are correctly set before loading the banner advertisement
Splash adGDT1. Display

2. Click

3. Is the logic of the game without padding normal
Pre load the next advertisement in advance after displaying the advertisement-

4.3 GDPR verification

1.Network switch to EU region

2.Operation: Start the application for the first time as expected. Expected: Pop up GDPR consultation box

3.Operation: Do not click any button, kill the application, and restart. Expected: GDPR consultation box will pop up (as long as not authorized, consultation box will pop up every time it is launched)

4.Operation: After clicking on authorize GDPR, kill the application and restart it. Expected: No GDPR consultation box will appear Appendix: Quick Reference Table for Advertising Testing Methods

Note that no matter which testing method is used to test the advertising sources on the advertising space, you need to first perform SDK integration verification. This is explained in detail in the first point of the debugging mode and testing mode documentation.


Advertising platformSDK version>=5.9.96
Meta(Facebook)Meta only offers competitive advertising services. The debugging mode has pre configured a test bidding ad source for Meta. You can directly call API methods and use the test bidding ad source for verification without the need for rule configuration in the developer background. Please refer to the details for more information Debugging Mode Document
Mintegral
GTD
CJS
BaiDu
KuaiShou
HuaWei
Sigmob
MiMeng
YouKeYing
Admob
Nend
Huawei
InMobi
Applovin
Chartboost
Tapjoy
IronSource
Unity Ads
Vungle
Maio
Start.io
MyTarget
Fyber
Pangle
Non competitive advertising:

The debugging mode has pre configured non competitive advertising sources for testing on various advertising platforms. You can directly call the API methods of various platforms and use test non bidding advertising sources for verification

No need to configure rules in the developer backend
For details, please check Debugging Mode Document
Bid advertising:

We do not provide bidding advertising sources for testing on these platforms. You need to pre configure the real bidding advertising source and call a separate API method to test device ID configuration. Open the server bidding advertising log and view the details of the advertising loading process to achieve debugging purposes

No need to configure rules in the developer backend

For details, please refer to the server bidding advertising source verification scheme
Taku ADXThe debugging mode has pre configured bidding and non bidding advertising sources for Taku ADX for testing purposes. You can directly call API methods and use the testing advertising source for verification without the need for rule configuration in the developer's background. Please refer to the details for more information Debugging Mode Document
Other advertising platformsConfigure and test using Taku Demo test ID


Previous
Integration Testing
Next
Error code description
Last modified: 2025-05-30Powered by