MonacaでAdMob Plusを使えるようにするまで

「cordova-plugin-admob-free」プラグインを使ってたアプリでAdMobから警告が来たので、色々調べた結果、対応してそうなAdMob Plusプラグインに乗り換えることにしました。



かなり難航したので手順を残します。

当方のアプリの
プロジェクトは「Cordova10」
iOSプラットフォームは「iOS6.2.0」、「Xcode 12.2」
Androidプラットフォームは「Android 9.1.0」、「Gradle 6.5.0」
です。


プラグインをインポートします。
「cordova-plugin-admob-free」プラグインの時に必要だった「cordova-admob-sdk」プラグインは不要なので消してしまってOKです。

config.xmlに下記を追加。
  <platform name="ios">
    ~
    <preference name="SwiftVersion" value="5.0"/>
    ~
  </platform>
アプリ名が日本語ならビルドがこけるのでこちらの対応も。



「cordova-plugin-admob-free」プラグインと広告表示のコードの書き方が異なるのでドキュメントを参考にコードを修正します。



とりあえずこれでiOS、Androidのアプリのビルド、テスト広告バナーの表示はできて審査までこぎつけました。
あとは審査が通ればいいですが…。


追記。
両ストアの審査は通って配信できました。AdMobの警告が消えたらまた書きます。



追記その2。
さらにアプデを配信したら今度はApp Storeでリジェクトをくらいました。
We’re looking forward to completing our review, but we need more information to continue. Your app uses the AppTrackingTransparency framework, but we are unable to locate the App Tracking Transparency permission request.

薄々思ってたけどやっぱりトラッキング要求をしないといけないみたい。



トラッキング要求のダイアログは「cordova-plugin-consent」プラグインを入れてマニュアルのコードを足せば出せました。



関係あるかわからないけどconfig.xmlにも記述を追加。
<platform name="ios">
    ~
    <edit-config target="NSUserTrackingUsageDescription" file="*-Info.plist" mode="merge">
        <string>お客様の興味関心に合わせた広告を表示するために利用します</string>
    </edit-config>
    ~
</platform>
通ってくれー。


追記その3。
ストア申請は通って3日ほどたったが警告は消えず。

ネットワークレポートを見るとGMA SDKがまだ古いものからアクセスを受けているからなのか。
ユーザーがみんなアプリをアップデートしてくれると変わるのか。


追記その4。
大体1か月半ほどたって配信制限が解除されました!めでたし。