iOS での SDK の初期化

重要: プロジェクトのランタイムライフサイクルの初期に (広告の表示が必要になる前に)、SDK を初期化してください。

ViewController.h

ViewController ヘッダー (.h) で、Unity Ads をインポートし、以下のデリゲートを設定します。

  • UnityAdsInitializationDelegate は、初期化の成功または失敗のコールバックをハンドルします。
  • UnityAdsLoadDelegate は、広告ユニットによるコンテンツのロードの成功または失敗のコールバックをハンドルします。
  • UnityAdsShowDelegate は、広告ユニットによるロードしたコンテンツの表示の成功または失敗のコールバックをハンドルします。
#import <UnityAds/UnityAds.h>
 
@interface ViewController : UIViewController<UnityAdsInitializationDelegate,
UnityAdsLoadDelegate,
UnityAdsShowDelegate>
 
@property (assign, nonatomic) BOOL testMode;

ViewController.m

SDK を初期化するには、該当するプラットフォーム用のプロジェクトのゲーム ID を参照する必要があります。この ID は、Monetization (収益化) ダッシュボード のセカンダリナビゲーションメニューから、CURRENT PROJECT (現在のプロジェクト) > Settings (設定) を選択することで確認できます。

ViewController 実装 (.m) で、初期化コールバックをハンドルする UnityAdsInitializationDelegate デリゲートを作成し、initialize メソッド内でそれをパラメーターとして参照します。

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [UnityAds
         initialize:kDefaultGameId
         testMode:self.testMode
         initializationDelegate:self];
}
 
// Implement initialization callbacks to handle success or failure:
#pragma mark : UnityAdsInitializationDelegate
- (void)initializationComplete {
    NSLog(@" - UnityAdsInitializationDelegate initializationComplete" );
    // Pre-load an ad when initialization succeeds, so it is ready to show:
    [UnityAds load:@"Interstitial_iOS" loadDelegate:self];
}
 
- (void)initializationFailed:(UnityAdsInitializationError)error withMessage:(NSString *)message {
    NSLog(@" - UnityAdsInitializationDelegate initializationFailed with message: %@", message );
}
 
// Implement load callbacks to handle success or failure after initialization:
#pragma mark: UnityAdsLoadDelegate
- (void)unityAdsAdLoaded:(NSString *)placementId {
    NSLog(@" - UnityAdsLoadDelegate unityAdsAdLoaded %@", placementId);
}
 
- (void)unityAdsAdFailedToLoad:(NSString *)placementId
                     withError:(UnityAdsLoadError)error
                   withMessage:(NSString *)message {
    NSLog(@" - UnityAdsLoadDelegate unityAdsAdFailedToLoad %@", placementId);
}

次のステップ: 実装を継続するために、iOS での基本的な広告の実装 に関するドキュメントを参照します。