Import of interstitial advertising SDK:
import 'package:anythink_sdk/at_index.dart';
Use the following code to load Interstitial ads
loadInterstitialAd() async {
await ATinterstitialManager
.loadInterstitialAd(placementID: 'you placementId', extraMap: {});
}
Only for the Sigmob platform, Sigmob's rewarded video advertising source is used as an interstitial screen (optional, note: after turning on, the TopOn background Sigmob interstitial advertising source needs to be configured as Sigmob's rewarded video parameters)
loadInterstitialAd() async {
await ATinterstitialManager
.loadInterstitialAd(placementID: 'you placementId', extraMap: {
ATinterstitialManager.UseRewardedVideoAsInterstitialKey(): true
});
}
Use the following code to determine whether there is an ad cache:
_hasInterAdReady() async {
await ATinterstitialManager
.hasInterstitialAdReady(
placementID: 'you placementId',
)
.then((value) {
print('flutter: ad cache $value');
});
}
Use the following code to obtain the advertising status (return type: Map) key-value is as follows:
1. isLoading: whether it is loading
2. isReady: whether there is advertising cache
3. adInfo: the current highest priority advertising cache information
_checkInterAdStatus() async {
await ATinterstitialManager
.CheckInterstitialLoadStatus(
placementID: 'b5bacad80a0fb1',
)
.then((value) {
print('flutter: interstitial status $value');
});
}
Get information about all available ads in the current ad slot
getInterstitialValidAds() async {
await ATinterstitialManager
.getInterstitialValidAds(
placementID: Configuration.interstitialPlacementID,
)
.then((value) {
print('flutter: all interstitial info $value');
});
}
Interstitial ads only need to call the display api and Pass display slot ID
_showInterAd() async {
await ATinterstitialManager
.showInterstitialAd(
placementID: 'you placementId',
);
}
When using the scene function, display ads through this api.
placementID: advertising slot ID
sceneID: Advertising scene ID(scene ID can be created through the TopOn background)
showSceneInterstitialAd() async {
await ATinterstitialManager
.showSceneInterstitialAd(
placementID: 'you placementId',
sceneID: 'you sceneID',
);
}
ATInterstitialResponse attribute introduction:
InterstitialStatus: Interstitial advertising status
placementID: placementID
requestMessage: Request information (error message)
extraMap: Callback information
isDeeplinkSuccess: isDeeplinkSuccess
Examples of notifications about interstitial ad events are as follows:
_interListen() {
ATListenerManager.interstitialEventHandler.listen((value) {
switch (value.interstatus) {
// interstitial load fail
case InterstitialStatus.interstitialAdFailToLoadAD:
print("flutter interstitialAdFailToLoadAD ---- placementID: ${value.placementID} ---- errStr:${value.requestMessage}");
break;
// interstitial load finish
case InterstitialStatus.interstitialAdDidFinishLoading:
print("flutter interstitialAdDidFinishLoading ---- placementID: ${value.placementID}");
break;
// interstitial play start, some AD platforms have this callback.
case InterstitialStatus.interstitialAdDidStartPlaying:
print("flutter interstitialAdDidStartPlaying ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
break;
// interstitial play end, some AD platforms have this callback.
case InterstitialStatus.interstitialAdDidEndPlaying:
print("flutter interstitialAdDidEndPlaying ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
break;
// interstitial play fail, some AD platforms have this callback.
case InterstitialStatus.interstitialDidFailToPlayVideo:
print("flutter interstitialDidFailToPlayVideo ---- placementID: ${value.placementID} ---- errStr:${value.requestMessage}");
break;
// interstitial show succeed
case InterstitialStatus.interstitialDidShowSucceed:
print("flutter interstitialDidShowSucceed ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
break;
// interstitial show fail
case InterstitialStatus.interstitialFailedToShow:
print("flutter interstitialFailedToShow ---- placementID: ${value.placementID} ---- errStr:${value.requestMessage}");
break;
// interstitial clicked
case InterstitialStatus.interstitialAdDidClick:
print("flutter interstitialAdDidClick ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
break;
// Deeplink
case InterstitialStatus.interstitialAdDidDeepLink:
print("flutter interstitialAdDidDeepLink ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
break;
// interstitial closed
case InterstitialStatus.interstitialAdDidClose:
print("flutter interstitialAdDidClose ---- placementID: ${value.placementID} ---- extra:${value.extraMap}");
break;
case InterstitialStatus.interstitialUnknown:
print("flutter interstitialUnknown");
break;
}
});
}