[Unity] AdMob導入時のエラーと解決方法まとめ (Android)

Unity

UnityでAdMobを導入する際に発生したエラーと、その解決方法をまとめました。プラットフォームはAndroidです。

広告

UnityでAdMobの導入に成功した環境

Unity LTS リリース版 2019.4.15f1
AdMob GoogleMobileAds-v5.4.0.unitypackage

導入方法

スタートガイド Unity Google Developers

テスト広告 Unity Google Developers

操作A

まず、よく使う操作を紹介します。AdMob導入時のエラーは、これで大体解決します。各エラーの解決方法を手順に沿って進めて、この操作をする案内があった時に、操作してください。

1[Unity Hub] インストール > モジュールを加える へ移動し、以下のモジュールが追加されていることを確認。

  • Android Build Support
  • Android SDK & NDK Tools
  • OpenJDK
追加されていなかったら、追加する。

2[Unity] Edit > Prefarences > External Tools へ移動。

3以下の項目のチェックボックスを外し、チェックを付け直す。

  • JDK Installed with Unity (recommended)
  • Android SDK Tools Installed with Unity (recommended)
  • Android NDK Installed with Unity (recommended)
  • Gradle Installed with Unity (recommended)

Resolving Android Dependenciesのプログレスバーが動かない(止まる)

AdMobのGoogleMobileAds-v5.4.0.unitypackageを読み込む時に発生したエラーです。エラーメッセージは以下の通りです。

FAILURE: Build failed with an exception.

* What went wrong:
Could not create an instance of type org.gradle.initialization.DefaultSettings_Decorated.
> Could not initialize class org.codehaus.groovy.reflection.ReflectionCache

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 19s

exit code: 1

1エラーが出たウインドウを [×] で閉じます。

2操作Aの操作をします。

3Assets > External Dependency Manager > Android Resolver > Force Resolveをクリック。プログレスバーが動けば成功です。

Failed to update Android SDK package list.

Androidのビルド時に発生したエラーです。

1操作Aの操作をします。

2再度、ビルドし、エラーが出ないことを確認してください。

Unity Editorでは広告が表示されるのに、実機(Android)では広告が表示されない

インタースティシャル広告を利用している場合は、まず、バナー広告で試してみて問題を切り分けましょう。

バナー広告もインタースティシャル広告も表示されない

AdMob導入時に「Resolving Android Dependenciesのプログレスバーが動かない(止まる)」のエラーは発生していませんでしたか?エラーが発生している場合は、エラーを解消してください。

バナー広告は表示されて、インタースティシャル広告は表示されない

インタースティシャル広告を表示させるスクリプトに問題がありそうです。インタースティシャル広告を表示させるメソッドをStart()の中で呼び出している場合は、スクリプトを書き換えてください。広告をロードするのに十分な時間を取る必要があります。

広告

おわりに

AdMobを導入するのに丸2日費やしてしまいました。参考になれば幸いです。

エラーを出さないために心がけたいこと

  • UnityのLTS版を使い、無闇にバージョンアップ、バージョンダウンをしない。
  • よくわからないエラーが出たときは、新しく空のプロジェクトファイルを作り、問題を切り分ける。

広告