コンテンツにスキップ

リワード広告

リワード広告の読み込み

リワード広告をロードするには、リワード広告ユニットに対応する MARewardedAd のインスタンスを取得し、その loadAd メソッドを呼び出します。 広告の準備が完了した際に通知されるように、MARewardedAdDelegate を実装します。 これにより、他の広告関連イベントについても通知されるようになります。

#import "ExampleViewController.h"
#import <AppLovinSDK/AppLovinSDK.h>
@interface ExampleViewController()<MARewardedAdDelegate>
@property (nonatomic, strong) MARewardedAd *rewardedAd;
@property (nonatomic, assign) NSInteger retryAttempt;
@end
@implementation ExampleViewController
- (void)createRewardedAd
{
self.rewardedAd = [MARewardedAd sharedWithAdUnitIdentifier: @"«ad-unit-ID»"];
self.rewardedAd.delegate = self;
// Load the first ad
[self.rewardedAd loadAd];
}
#pragma mark - MAAdDelegate Protocol
- (void)didLoadAd:(MAAd *)ad
{
// Rewarded ad is ready to show. '[self.rewardedAd isReady]' now returns 'YES'
// Reset retry attempt
self.retryAttempt = 0;
}
- (void)didFailToLoadAdForAdUnitIdentifier:(NSString *)adUnitIdentifier withError:(MAError *)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)
self.retryAttempt++;
NSInteger delaySec = pow(2, MIN(6, self.retryAttempt));
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, delaySec * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
[self.rewardedAd loadAd];
});
}
- (void)didDisplayAd:(MAAd *)ad {}
- (void)didClickAd:(MAAd *)ad {}
- (void)didHideAd:(MAAd *)ad
{
// Rewarded ad is hidden. Pre-load the next ad
[self.rewardedAd loadAd];
}
- (void)didFailToDisplayAd:(MAAd *)ad withError:(MAError *)error
{
// Rewarded ad failed to display. AppLovin recommends that you load the next ad.
[self.rewardedAd loadAd];
}
#pragma mark - MARewardedAdDelegate Protocol
- (void)didRewardUserForAd:(MAAd *)ad withReward:(MAReward *)reward
{
// Rewarded ad was displayed and user should receive the reward
}
@end

リワード広告の表示

リワード広告を表示するには、取得した MARewardedAd オブジェクトで showAd を呼び出します。

if ( [self.rewardedAd isReady] )
{
[self.rewardedAd showAd];
}

リワード広告の金額と通貨へのアクセス

リワード額と通貨にアクセスするには、-[MARewardedAdDelegate didRewardUserForAd:withReward:] コールバックをオーバーライドします。

- (void)didRewardUserForAd:(MAAd *)ad withReward:(MAReward *)reward
{
NSLog(@"Rewarded user: %d %@", reward.amount, reward.label);
}

S2S Rewarded Callbacks

通貨サーバーへのコールバックを受け取ることができます。 設定方法については、MAX S2S Rewarded CallbackAPIガイドをご覧ください。 次に、Edit Ad UnitページにてServer Side Callback URLをアップデートしてください。

リワード広告の金額と通貨の設定

リワードの金額と通貨を設定する方法:

  1. Edit Ad UnitページにてAdd S2S Reward Callbackをクリックします:Ad Type: ☐App Open, ☐Banner, ☐Interstitial, ☐MRec, ☐Native, ☑Rewarded. Add S2S Reward Callback.
  2. Server Side Callback URLReward AmountおよびRewarded Currency Nameを追加します:Ad Type: ☐App Open, ☐Banner, ☐Interstitial, ☐MRec, ☐Native, ☑Rewarded. Hide Callback Settings.Server Side Callback URL form field. Reward Amount form field. Rewarded Currency Name form field. AppLovin Event Key form field.