iOSにAdmobを導入しているのですが、デバッグ実行すると、ある時、以下のようなエラーでクラッシュするようになってしまったので、その対処方法を書いていこうと思います。
Terminating app due to uncaught exception 'GADInvalidInitializationException', reason: 'The Google Mobile Ads SDK was initialized without AppMeasurement. Google AdMob publishers, follow instructions here: https://googlemobileadssdk.page.link/admob-ios-update-plist to include the AppMeasurement framework and set the -ObjC linker flag. Google Ad Manager publishers, follow instructions here: https://googlemobileadssdk.page.link/ad-manager-ios-update-plist'
info.plistの修正
検索してると、info.plistに以下のように、GADIsAdManagerAppを追加するとよいっていう記事を何件か見つけたので、試したところ、クラッシュせずに正常に動作するようになりました。
<key>GADIsAdManagerApp</key>
<true/>
これは自分の環境だけかもしれないのですが、info.plistにGADIsAdManagerAppを追加すると、何故かFirebaseへデータが飛ばなくなってしまいました。
この修正を入れてリリースした後に気づいたのですが、Firebaseのダッシュボードにデータが全然送られなくなってしまいました。なので、この修正方法はあまりお勧めしません。
linker flagの追加
エラーにも書いてあるのですが、linker flagに「-ObjC」を追加することでもエラーを回避できました。この方法であればFirebaseも正常にデータが送られるので、同じエラーで困っている場合は試してみてください。
