質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.50%

  • Unity

    4005questions

    Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。

[Unity] AdMob 広告をAndroidに実装できない。

受付中

回答 2

投稿

  • 評価
  • クリップ 1
  • VIEW 730

Unity初心者です。
Unityを使って、AdMob広告を表示させたいのですが、できなくて困っています...

http://it-happens.info/unity-admob/の記事を参考に進めていったのですが、Assetの「Play Services Resolver」→「Android Resolver」→「Resolve Client jars」でjavaファイルを作成しようとしたところ、「Resolve Client jars」が見当たりませんでした。
そこで、https://matatabisoft.com/274/の記事を参考にしたのですが、「Force Resolve」を押すとエラーになり、<Your application will not run, see the log for details.>と表示されました。
Editor.logを確認したところ、下記のように書かれておりました。

私自身パソコン自体がそこまで詳しくなく、ログもまともに読めません...

環境変数の「JAVA_HOME」の設定も確認を行いましたが、問題はなさそうに見えました。

UnityのバージョンはUnity 5.2.2f1、Android studioは2.3.3、OSはwindowsVistaです。

どなたかご教授いただければと思っております。
よろしくお願いいたします。

以下Editor.logの内容です。

Refresh: detecting if any assets need to be imported or removed ... Refresh: elapses 0.011165 seconds (Nothing changed)
Gradle failed to fetch dependencies.

Failed to run 'C:\Users\syu wada\Documents\Unity\Bound Ball\Temp\PlayServicesResolverGradle\gradlew.bat -b "C:\Users\syu wada\Documents\Unity\Bound Ball\Temp\PlayServicesResolverGradle\PlayServicesResolver.scripts.download_artifacts.gradle" --no-daemon "-PANDROID_HOME=C:/Android/sdk" "-PTARGET_DIR=C:\Users\syu wada\Documents\Unity\Bound Ball\Assets\Plugins\Android" "-PMAVEN_REPOS=https://maven.google.com" "-PPACKAGES_TO_COPY=com.google.android.gms:play-services-ads:11.6.0"'
stdout:

ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk1.8.0_111

Please set the JAVA_HOME variable in your environment to match the

location of your Java installation.

stderr:

exit code: 1

UnityEngine.Debug:Internal_Log(Int32, String, Object)
UnityEngine.Debug:LogError(Object)
Google.Logger:Log(String, LogLevel)
GooglePlayServices.PlayServicesResolver:Log(String, LogLevel)
GooglePlayServices.<GradleResolution>cAnonStorey14:<>m1F(Result)
GooglePlayServices.<GradleResolution>cAnonStorey15:<>m28()
GooglePlayServices.PlayServicesResolver:PumpUpdateQueue()
UnityEditor.EditorApplication:Internal_CallUpdateFunctions() (at C:\buildslave\unity\build\artifacts\generated\common\editor\EditorApplicationBindings.gen.cs:270)

(Filename: C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs Line: 270)

Resolution failed

Failed to fetch the following dependencies:
com.google.android.gms:play-services-ads:11.6.0

UnityEngine.Debug:Internal_Log(Int32, String, Object)
UnityEngine.Debug:LogError(Object)
Google.Logger:Log(String, LogLevel)
GooglePlayServices.PlayServicesResolver:Log(String, LogLevel)
GooglePlayServices.ResolverVer1_1:LogMissingDependenciesError(List1) GooglePlayServices.<DoResolutionUnsafe>c__AnonStorey18:<>m__26(List1)
GooglePlayServices.<GradleResolution>cAnonStorey14:<>m1F(Result)
GooglePlayServices.<GradleResolution>cAnonStorey15:<>m28()
GooglePlayServices.PlayServicesResolver:PumpUpdateQueue()
UnityEditor.EditorApplication:Internal_CallUpdateFunctions() (at C:\buildslave\unity\build\artifacts\generated\common\editor\EditorApplicationBindings.gen.cs:270)

(Filename: C:/buildslave/unity/build/artifacts/generated/common/editor/EditorApplicationBindings.gen.cs Line: 270)

Refresh: detecting if any assets need to be imported or removed ... Refresh: elapses 0.013943 seconds (Nothing changed)
Ignoring 'C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/Advertisements/UnityEngine.Advertisements.dll' because we're compiling for Editor
Ignoring 'C:/Program Files/Unity/Editor/Data/UnityExtensions/Unity/UnityAnalytics/UnityEngine.Analytics.dll' because we're compiling for Editor
EditorHelper: Attempting to use MonoDevelop.

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

0

やはりJAVA_HOMEがおかしいらしいので
「該当フォルダの中に本当にファイルが存在するか」
「該当フォルダが開けるか(権限的な問題で)」
を確認してください。
(なお、Unityのバージョンが古すぎるように思うので可能ならアップデートをしてください)

また、問題切り分けの為、AdMobを導入していない空プロジェクトのビルドが可能かも確認してみてください。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/01/14 16:47

    私、初心者のため、回答者様の質問を正確に理解しているか自信はありませんが

    「該当フォルダの中に本当にファイルが存在するか」→Editor.logにおける4行目のFailed to run以下のファイルを確認したところ、ファイルは全て存在しているようでした。C:\Program Files\Java\jdk1.8.0_111も存在しています。
    「該当フォルダが開けるか(権限的な問題で)」→C:\Users\syu wada\Documents\Unity\Bound Ball\Temp\PlayServicesResolverGradle\gradlew.batは何も表示されず開けない。
    C:\Users\syu wada\Documents\Unity\Bound Ball\Temp\PlayServicesResolverGradle\PlayServicesResolver.scripts.download_artifacts.gradleは「このファイルを開くには、そのためのプログラムが必要です」が表示され開けない。
    jdk1.8.0_111のフォルダの中には入れます。

    (UnityのバージョンはOSが古いためかアップデートできませんでした)

    AdMobを導入していない空プロジェクトのビルドが可能かも確認してみてください→このビルドというのは、空のプロジェクトに改めてAdmobを導入し、今回上手くいかなかったjavaファイルの作成や「Force Resolve」が上手くいくかということでしょうか?
    試したところ、やはり同じ結果となりました。

    キャンセル

  • 2018/01/15 21:18

    >AdMobを導入していない空プロジェクトのビルドが可能かも確認してみてください
    いいえ、完全に空のプロジェクト(Admobを導入しない状態)でビルド出来るかどうかのチェックです。
    「そもそもアプリがビルド出来ない」か「Admob入りだとビルド出来ない」のどちらなのかを判断する材料になります。

    キャンセル

  • 2018/01/20 18:36

    ビルドに関しては、空プロジェクトでも、Admob入りでも出来ました。
    ただAdmob広告を表示させることができません(「Force Resolve」を押すとエラーがでて、ファイルを作成できないため?)。

    キャンセル

  • 2018/01/22 11:16

    それだとやはり、Google Mobile Ads Unity PluginのバージョンがJDK周り(PC環境)に比べて新しすぎて、正常にjar生成が出来ていないのかなぁと思います。
    古いバージョンのプラグインを探して使えばjar生成は通るかもしれませんが、それはそれで現環境のAdmobのAPIに合致しているか(=実際に広告表示出来るか)が定かではないです。
    お力になれず申し訳無いですが私に分かるのはここまでです……

    キャンセル

  • 2018/01/27 11:28

    キャンセル

  • 2018/01/27 11:29

    Google Mobile Ads Unity Pluginのバージョンを古くすることでjar生成できました!
    ただ、空プロジェクトで試したのですが、下記のようなエラーが出て、ビルド自体ができなくなってしまいました。
    これをみて、AndroidManifest.xmlのminSdkVersionを14から9に変更したのですが、同じようなエラー内容となります。
    これも環境の問題なのでしょうか
    ややこしいことを言って申し訳ないです・・・
    もしよろしければ、アドバイスよろしくお願いいたします。

    以下、エラー内容

    Error building Player: CommandInvokationFailure: Unable to merge android manifests. See the Console for more details.
    C:\Program Files\Java\jdk1.8.0_111\bin\java.exe -Xmx1024M -Dcom.android.sdkmanager.toolsdir="C:/Android/sdk\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity\Editor\Data\PlaybackEngines\androidplayer/Tools\sdktools.jar" -

    stderr[
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\GoogleMobileAdsPlugin\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-ads-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-ads-lite-11.0.4\AndroidManifest.xml:7] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-base-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-basement-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-clearcut-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-gass-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-safetynet-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    Error: [Temp\StagingArea\AndroidManifest-main.xml:12, C:\Users\syu wada\Documents\Unity\TestAdmob2\Temp\StagingArea\android-libraries\play-services-tasks-11.0.4\AndroidManifest.xml:2] Main manifest has <uses-sdk android:minSdkVersion='9'> but library uses minSdkVersion='14'
    ]
    stdout[

    ]

    キャンセル

-1

Unityのバージョン、OSは違いますが私も全く同じ状況です。
「あれ?俺ここで質問したっけ?」と思えるぐらいに(笑)
もし私が解決出来たら書き込みますので、そちらが先に解決された場合にも
その方法を教えていただければ助かります。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/01/13 15:35 編集

    ここは回答を書く場所です。また、ユーザーに個別にメッセージを送る機能は現在のteratailにはありません。
    回答が付いた時に通知を受けたい場合は「クリップ」を利用してください。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.50%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Unity

    4005questions

    Unityは、ユニティテクノロジーが開発したゲームエンジンです。 主にモバイルやブラウザ向けのゲーム製作に利用されていましたが、3Dの重力付きゲームが簡単に作成できることから需要が増え、現在はマルチプラットフォームに対応しています。 言語はC言語/C++で書かれていますが、C#、JavaScript、Booで書かれたコードにも対応しています。