激励广告能够向与广告交互的用户提供各种应用内物品作为奖励,如继续游戏、虚拟货币等。这样,用户在广告互动中投入时间后就能获得切实的价值,从而达到推动交互的效果。
以下各节将向您介绍如何加载和显示激励广告。
以下代码展示了如何附加监听器以及加载第一则激励广告:
final String _rewarded_ad_unit_ID = Platform.isAndroid ? "«Android-ad-unit-ID»" : "«iOS-ad-unit-ID»";
const int _maxExponentialRetryCount = 6;
var _rewardedAdRetryAttempt = 0;
void initializeRewardedAd() {
AppLovinMAX.setRewardedAdListener(RewardedAdListener(onAdLoadedCallback: (ad) {
// Rewarded ad is ready to show. AppLovinMAX.isRewardedAdReady(_rewarded_ad_unit_ID) now returns 'true'.
print('Rewarded ad loaded from ' + ad.networkName);
// Reset retry attempt
_rewardedAdRetryAttempt = 0;
}, onAdLoadFailedCallback: (adUnitId, error) {
// Rewarded ad failed to load.
// AppLovin recommends that you retry with exponentially higher delays up to a maximum delay (in this case 64 seconds).
_rewardedAdRetryAttempt = _rewardedAdRetryAttempt + 1;
if (_rewardedAdRetryAttempt > _maxExponentialRetryCount) return;
int retryDelay = pow(2, min(_maxExponentialRetryCount, _rewardedAdRetryAttempt)).toInt();
print('Rewarded ad failed to load with code ' + error.code.toString() + ' - retrying in ' + retryDelay.toString() + 's');
Future.delayed(Duration(milliseconds: retryDelay * 1000), () {
AppLovinMAX.loadRewardedAd(_rewarded_ad_unit_ID);
});
}, onAdDisplayedCallback: (ad) {
⋮
}, onAdDisplayFailedCallback: (ad, error) {
⋮
}, onAdClickedCallback: (ad) {
⋮
}, onAdHiddenCallback: (ad) {
⋮
}, onAdReceivedRewardCallback: (ad, reward) {
⋮
}));}void loadRewardedAd() { AppLovinMAX.loadRewardedAd(_rewarded_ad_unit_id);}
要显示激励广告,请调用 showRewardedAd():
bool isReady = (await AppLovinMAX.isRewardedAdReady(_rewarded_ad_unit_ID))!;
if (isReady) {
AppLovinMAX.showRewardedAd(_rewarded_ad_unit_ID);
}
您可以通过货币服务器接收回传。 要了解操作方法,请参阅 MAX S2S Rewarded Callback API 指南。 随后,在Edit Ad Unit页面更新Server Side Callback URL。
要设置激励广告的金额和币种,请按照下列步骤操作:

