FIVE AdMob/GAM iOS Mediation version 1.5.0マイグレーションガイド

LINE Corporation

2022/03/22

概要

Five AdMob/GAMメディエーションアダプタversion 1.5.0ではdeprecated指定されていた機能の削除が行われました。

適切に移行手順を踏まずにメディエーションアダプタversion 1.5.0を導入するとFive広告が表示されなくなるおそれがあります。

本ガイドでは移行方法を簡単にご案内します。また、導入ガイドも合わせてご確認ください。

手順

以下の手順で、メディエーションアダプタversion 1.5.0へ移行してください。

  1. [optional] メディエーションアダプタversion 1.4.1を搭載したアプリをリリースする
  2. メディエーショングループの設定を書き換える
  3. メディエーションアダプタversion 1.5.0に対応するようアプリを書き換える

[optional] メディエーションアダプタversion 1.4.1を搭載したアプリをリリースする

直近にリリースされたアプリに搭載されているメディエーションアダプタが古すぎる場合には、 一旦メディエーションアダプタversion 1.4.1を搭載したアプリのリリースを行ってください。

対象となるメディエーションアダプタのバージョンは以下のとおりです

広告フォーマット メディエーションアダプタのバージョン メディエーションアダプタのリリース日
バナー
ネイティブ
リワード
1.0.0 未満 2020/09/02 以前
インタースティシャル 1.2.0 未満 2021/03/15 以前

この手順は次節でご案内するメディエーショングループのカスタムイベントクラスを変更しても広告が出続けるようにするためです。

メディエーショングループの設定を書き換える

メディエーショングループのカスタムイベントを書き換えます

フォーマット 廃止されたクラス 移行先クラス
バナー AdMobFiveCustomEventBanner
DfpFiveCustomEventBanner
FADGADCustomEventBannerAd
インタースティシャル DfpFiveCustomEventInterstitial FADGADCustomEventInterstitial
リワード FiveGADMediationAdapter FADGADCustomEventRewardedAd
ネイティブ DfpFiveCustomEventNativeAd FADGADCustomEventNativeAd
移行前 移行後

メディエーションアダプタversion 1.5.0に対応するようアプリを書き換える

FiveSDKの初期化をアプリから行う

アダプタからFiveSDKを初期化する機能は削除されました。FiveSDKを初期化するコードを追加してください。

FADConfig *config = [[FADConfig alloc] initWithAppId:<AppId>];
config.isTest = <Is Test?>;
  
[FADSettings registerConfig:config];

Info.plist内の不要な値を削除する

Info.plist内のFIVE_APP_IDFIVE_IS_TESTは不要になりました。削除してください。

ネイティブ広告の幅をアプリから行っている場合に、ラベルを変更する

deprecatedとなったGADCustomEventNativeAdからGADMediationAdapterへ移行した副作用として、 FADGADCustomEventNativeAdGADCustomEventExtrasから値を取り出すためにはラベルの共有が必要になりました。

ネイティブ広告の幅を指定する際には、ラベルに"FIVE_GAD_EXTRA_LABEL"を指定してください。

GADRequest* request = [GADRequest request];
GADCustomEventExtras* extras = [[GADCustomEventExtras alloc] init];
[extras setExtras:@{@"FIVE_VIDEO_VIEW_WIDTH": @"<ad width>"} forLabel:@"FIVE_GAD_EXTRA_LABEL"];
[request registerAdNetworkExtras:extras];

アプリからスロットIDを指定するコードを削除する

サーバ側のパラメータからFiveのスロットIDを指定するように変更されたので、アプリ側からスロットIDを指定するコードは不要になりました。

以下のようなアプリ側からGADCustomEventExtrasを介してスロットIDを指定しているコードを削除してください。

削除前のコード

GADRequest *request = [GADRequest request];

GADCustomEventExtras *extras = [[GADCustomEventExtras alloc] init];
[extras setExtras:@{@"five_interstitial_slot_id": @"<スロットID>"} forLabel:@"<ラベル>"];
[request registerAdNetworkExtras:extras];

[GADInterstitialAd loadWithAdUnitID:@"<YOUR AD UNIT ID>"
                            request:request
                  completionHandler:^(GADInterstitialAd * _Nullable interstitialAd, NSError * _Nullable error) {
  ...
}

削除後のコード

GADRequest *request = [GADRequest request];

[GADInterstitialAd loadWithAdUnitID:@"<YOUR AD UNIT ID>"
                            request:request
                  completionHandler:^(GADInterstitialAd * _Nullable interstitialAd, NSError * _Nullable error) {
  ...
}