Menu

Interstitials ads

Import Interstitial Ad SDK:

java Copy
import 'package:secmtp_sdk/at_index.dart';
java Copy
import 'package:thinkup_sdk/at_index.dart';

Use the following code to load Interstitial ad

java Copy
loadInterstitialAd() async {
    await ATinterstitialManager
        .loadInterstitialAd(placementID: 'your placementId', extraMap: {});
  }

Only for the Sigmob platform: use Sigmob's rewarded video ad source as interstitial ad (optional, note: after enabling, the Sigmob interstitial ad source in the TopOn backend needs to be configured with Sigmob's rewarded video parameters)

java Copy
loadInterstitialAd() async {
    await ATinterstitialManager
        .loadInterstitialAd(placementID: 'your placementId', extraMap: {
            ATinterstitialManager.UseRewardedVideoAsInterstitialKey(): true
        });
  }

1.2 Check for Ad Cache and Get Ad Status

Use the following code to check if there is ad cache:

java Copy
 _hasInterAdReady() async {
    await ATinterstitialManager
        .hasInterstitialAdReady(
      placementID: 'your placementId',
    )
        .then((value) {
      print('flutter interstitial ad video cache: $value');
    });
  }

1.3 Enter Scene

java Copy
entryInterstitialScenario(String placementID, String sceneID) async {
    await ATInterstitialManager.entryInterstitialScenario(
        placementID: 'your placementId',
        sceneID: 'your sceneID',
        );
  }

To show the interstitial ad, simply call the display API and pass the display placement ID

java Copy
_showInterAd() async {
    await ATinterstitialManager
        .showInterstitialAd(
      placementID: 'your placementId',
    );
  }

When using the scene function, display the ad through this API with parameters: Placement ID + Scene ID (Scene ID can be created via the TopOn backend)

java Copy
showSceneInterstitialAd() async {
    await ATinterstitialManager
        .showSceneInterstitialAd(
      placementID: 'your placementId',
      sceneID: 'your sceneID',
    );
  }

1.5 Implement Interstitial Ad Listener

Introduction to ATInterstitialResponse Properties:

InterstitialStatus: Interstitial ad status

placementID: Ad placement ID

requestMessage: Request information (error information)

extraMap: Callback Information

isDeeplinkSuccess: Whether DeepLink is successful

Example of notifications for interstitial ad events is as follows:

java Copy
_interListen() {

    ATListenerManager.interstitialEventHandler.listen((value) {

      switch (value.interstatus) {
        // Ad loading failed
        case InterstitialStatus.interstitialAdFailToLoadAD:
          print("flutter interstitialAdFailToLoadAD ---- placementID: ${value.placementID} ---- errStr:${value.requestMessage}");
          break;
        // Ad loading succeeded  
        case InterstitialStatus.interstitialAdDidFinishLoading:
          print("flutter interstitialAdDidFinishLoading ---- placementID: ${value.placementID}");
          break;
        // Ad video started playing (this callback is available for some platforms)  
        case InterstitialStatus.interstitialAdDidStartPlaying:
          print("flutter interstitialAdDidStartPlaying ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
          break;
        // Ad video finished playing (this callback is available for some ad platforms)  
        case InterstitialStatus.interstitialAdDidEndPlaying:
          print("flutter interstitialAdDidEndPlaying ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
          break;
        // Ad video playback failed (this callback is available for some ad platforms)  
        case InterstitialStatus.interstitialDidFailToPlayVideo:
          print("flutter interstitialDidFailToPlayVideo ---- placementID: ${value.placementID} ---- errStr:${value.requestMessage}");
          break;
        // Ad displayed successfully  
        case InterstitialStatus.interstitialDidShowSucceed:
          print("flutter interstitialDidShowSucceed ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
          break;
        // Ad display failed  
        case InterstitialStatus.interstitialFailedToShow:
          print("flutter interstitialFailedToShow ---- placementID: ${value.placementID} ---- errStr:${value.requestMessage}");
          break;
        // Ad clicked  
        case InterstitialStatus.interstitialAdDidClick:
          print("flutter interstitialAdDidClick ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
          break;
        // DeepLink triggered
        case InterstitialStatus.interstitialAdDidDeepLink:
          print("flutter interstitialAdDidDeepLink ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
          break;
        // Ad closed  
        case InterstitialStatus.interstitialAdDidClose:
          print("flutter interstitialAdDidClose ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
          break;

        case InterstitialStatus.interstitialUnknown:
          print("flutter interstitialUnknown");
          break;
      }
    });
}
Previous
Rewarded video
Next
Banner ads
Last modified: 2026-01-07Powered by