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

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

新規登録して質問してみよう
ただいま回答率
85.48%
AdMob

AdMobは、事前に指定した条件に従ってアプリに広告を表示するGoogleのサービス。開発者の向けのサービスで、広告を掲載することにより、収益を得ることが可能です。その他、見た目や雰囲気などアプリに合う広告に変更したり、広告表示の場所を指定することもできます。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

2189閲覧

[android]unityでadmobが表示できない

kabe2020

総合スコア0

AdMob

AdMobは、事前に指定した条件に従ってアプリに広告を表示するGoogleのサービス。開発者の向けのサービスで、広告を掲載することにより、収益を得ることが可能です。その他、見た目や雰囲気などアプリに合う広告に変更したり、広告表示の場所を指定することもできます。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2020/06/17 14:06

前提・実現したいこと

unityで自作したゲーム上でandroid用のadmobバナー広告を表示したい

発生している問題・エラーメッセージ

空のプロジェクトを作成して以下を参考にadmobの
バナー広告をunityに組み込もうとしているのですが
実機で見ても広告が表示されません。

https://developers.google.com/admob/unity/start?hl=ja
https://developers.google.com/admob/unity/banner?hl=ja

該当のソースコード

using System; using UnityEngine; using GoogleMobileAds.Api; ... public class GoogleMobileAdsDemoScript : MonoBehaviour { private BannerView bannerView; ... public void Start() { #if UNITY_ANDROID string appId = "ca-app-pub-3940256099942544~3347511713"; #elif UNITY_IPHONE string appId = "ca-app-pub-3940256099942544~1458002511"; #else string appId = "unexpected_platform"; #endif // Initialize the Google Mobile Ads SDK. MobileAds.Initialize(appId); this.RequestBanner(); } private void RequestBanner() { #if UNITY_ANDROID string adUnitId = "ca-app-pub-3940256099942544/6300978111"; #elif UNITY_IPHONE string adUnitId = "ca-app-pub-3940256099942544/2934735716"; #else string adUnitId = "unexpected_platform"; #endif // Create a 320x50 banner at the top of the screen. this.bannerView = new BannerView(adUnitId, AdSize.Banner, AdPosition.Top); // Create an empty ad request. AdRequest request = new AdRequest.Builder().Build(); // Load the banner with the request. this.bannerView.LoadAd(request); } }

試したこと

空のプロジェクトを作成し、
https://developers.google.com/admob/unity/start?hl=ja
の内容の作業を行いました。
ローカル環境と上記URL「スタートガイド」の内容に対し差異がある部分は
「Mobile Ads SDK」の箇所で
スタートガイド:Play Services Resolver
ローカル:External Dependancy Manager
となっているところぐらいです。

Android Resolver➡resolveをクリックすると
android Dependencies
Resolution Succeeded
が表示されています。

また「Unity4との互換性」については実施していません。

その後Hierarchyウィンドウで右クリック→Create Emptyで
空のゲームオブジェクトを作成し、ProjectウィンドウでC#Scriptを
作成しました。

作成したC#Scriptに対し
バナー広告(https://developers.google.com/admob/unity/banner?hl=ja)
の内容をコピーしました。

具体的なソースは上記該当のソースコードを参照ください。
(本当にバナー広告のURLに載っているコードそのままです)

appIdとadUnitIdの値については
テスト用のIDだと認識しています。
(このままの値で問題ないと思ってます)

この状態でビルドをしてandroidの実機に
「adb install 作成したapkファイル」
でインストールしました。
が、広告は表示されませんでした。
エラーも出ておらず手順通りにしているつもりなので
何が問題なのかが分かっていません。

ヒントでもいいので何か教えていただけないでしょうか。

補足情報(FW/ツールのバージョンなど)

Unityのバージョン:2019.3.13f1 Personal
importしたMobile Ads Unity プラグイン:adGoogleMobileAds-v5.1.0

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

お騒がせしました。自己解決しました。

Mobile Ads Unity プラグインのimportを行った時に
実はエラーが発生していました。
(ここを全然気にしていませんでした。)
どうもUnityのバグみたいです。

解決方法は以下2点でした。

Edit➡Preferences➡External Toolsに行き
JDK installed with Unity
のチェックボックスをオフ➡オンを行う。


Assets➡External Dependancy Manager➡Android Resolver➡Force Resolve

↓のURLを参考にしました
https://stackoverflow.com/questions/56722286/how-to-fix-java-home-environment-references-a-directory-in-unity3d

Mobile Ads Unity プラグインのimport時のエラーの内容としては
環境変数にJAVA_HOMEが存在しないので処理が続けられないみたいな内容です。

ただローカルのunity 2019.3.13f1はUnity Hubの「モジュールを加える」から
既にOpenJDKをインストール済みなので、出ているエラー内容がよく理解できませんでした。
(確かに環境変数にJAVA_HOMEは登録していなかったのですが、
OpenJDKがインストールされている環境下でそもそもJAVA_HOMEいるのか?という
謎がループしていました)

参考URLによると①のチェックオフ前のJDKのパスが間違っている(ちゃんとUnityが参照できていない?)ようで
チェックオフ➡チェックオンすることにより参照パスが正しい場所を見るように更新されるようです。

今回のパターンはMobile Ads Unity プラグインのimportでエラーが発生した後の手順なので
import前に①を行えば②のForce Resolveは必要なさそうです。

投稿2020/06/18 13:22

編集2020/06/19 12:16
kabe2020

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問