Menu

Testing Checklist

Please refer to the following key points during testing to ensure all features and user experience meet expectations.


[ ] 1. Initialize MCSDK on App Launch

  • For releases in the EU, execute the GDPR compliance consent flow before initializing MCSDK.
  • Clearly specify which mediation platforms are integrated (e.g., TopOn, Max), and verify that each mediation SDK is initialized successfully.

[ ] 2. Preload Ads After SDK Initialization

  • Stagger ad loading logic to avoid high-concurrency ad load requests.
  • Use a single global Ad instance for rewarded, interstitial, splash, and native ad formats.

[ ] 3. Rewarded Ads & Interstitial Ads

  • After MCSDK initialization or when entering the app's main scene, trigger the first ad load request in advance.
  • Before showing an ad, call isReady to check ad availability; if true, show the ad, if false, request ad loading.
  • For rewarded video, ensure rewards are granted in the onUserRewarded callback and verify reward delivery during testing.
  • Preload in the ad callback(onAdLoadFailed, onAdDisplayFailed, onAdHidden, onAdDisplayed).
  • Prevent Multiple Clicks: When displaying rewarded or interstitial ads, prevent multiple clicks to avoid duplicate ad pop-ups.

[ ] 4. Splash Ads

  • If using custom timeout logic, pass the same timeout value to MCSDK.
  • On ad load timeout, navigate to the app's main page in the onAdLoadTimeout callback.
  • If loading does not timeout, display the ad in the onAdLoaded callback.
  • Preload splash ads for soft launch in onAdDisplayFailed and onAdHidden callbacks.
  • When the app switches to the background or pages change, call isReady to check for cached ads; if false, preload ads.
  • On skip click, ensure the onAdHidden callback is triggered correctly and external browser/app jumps work as expected.

[ ] 5. Banner Ads

  • MCAdView can be added to BannerViewContainer in advance and set to visible, or you can request ad loading first and add to the container when ready to display.
  • For auto-refresh, use HyperBid Tools > Select App > Edit Banner Mediation Unit > Advanced Settings, and disable auto-refresh in each mediation platform's dashboard.
  • After enabling auto-refresh in HyperBid dashboard, verify that auto-refresh works as expected.

[ ] 6. Native Ads

  • In the onAdLoaded callback, if MCNativeAdView and MCAdInfo are not null, retain references for subsequent ad display.
  • Ensure view types in MCNativeAdViewBinder.Builder strictly match, and check if onAdDisplayed is triggered correctly on each platform.
  • Resource release: If using a global NativeAd instance, release resources when the app exits; if bound to an Activity, call NativeAdLoader.destroy() in onDestroy().
  • Different networks have different rendering requirements; ensure all networks can fill, display, and trigger onAdDisplayed callback correctly.

[ ] 7. MCSDK Debug Log

  • Log TAG filter: mcsdk
  • Use logs to verify that all ad sources configured in each mediation platform can be filled, and that load, fill, display, and click callbacks are triggered as expected.

Last modified: 2025-07-21Powered by