AdMobをiosに組み込んでみようという事で覚書
「AdMobをiOSに組み込んでみよう(環境設定編)」の続きです。
https://qiita.com/sanoh/items/2c99918fe7c9ba01821c
■Setp1.画面のレイアウトを設定しよう
・ストーリーボードを立ち上ボタンを作成しよう(Layoutの仕方は省きます)
■Step2.ボタンをソースに追加
Buttonを右クリックで「ViewController.m」の@endの上にドロップします。
名前を聞いてくるので今回は「doSomethig」として「Connect」を選択します。
すると以下のような状態になります
■Step3.プログラム
ViewController.mを編集します
#import "ViewController.h"
@import GoogleMobileAds;
@interface ViewController ()<GADRewardedAdDelegate>
@property(nonatomic, strong) GADRewardedAd *rewardedAd;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
self.rewardedAd = [self createAndLoadRewardedAd];
}
//
- (GADRewardedAd *)createAndLoadRewardedAd {
GADRewardedAd *rewardedAd = [[GADRewardedAd alloc]
initWithAdUnitID:@"ca-app-pub-3940256099942544/1712485313"];
GADRequest *request = [GADRequest request];
[rewardedAd loadRequest:request completionHandler:^(GADRequestError * _Nullable error) {
if (error) {
// Handle ad failed to load case.
} else {
// Ad successfully loaded.
}
}];
return rewardedAd;
}
// 見終わった
- (void)rewardedAd:(GADRewardedAd *)rewardedAd userDidEarnReward:(GADAdReward *)reward {
}
// 始まった
- (void)rewardedAdDidPresent:(GADRewardedAd *)rewardedAd {
}
// 失敗
- (void)rewardedAd:(GADRewardedAd *)rewardedAd didFailToPresentWithError:(NSError *)error {
}
// 終了後再読み込み
- (void)rewardedAdDidDismiss:(GADRewardedAd *)rewardedAd {
self.rewardedAd = [self createAndLoadRewardedAd];
}
// ボタンが押された
- (IBAction)doSomething:(id)sender {
if (self.rewardedAd.isReady) {
[self.rewardedAd presentFromRootViewController:self delegate:self];
}
}
@end