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

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

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

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

Unity

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

Q&A

0回答

1367閲覧

Unity Admobのインタースティシャル広告が閉じれない

OHPGU

総合スコア2

AdMob

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

Unity

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

0グッド

0クリップ

投稿2021/12/04 12:02

UnityのAdmobのインタースティシャル広告が閉じれない。

UnityでAdmobのインタースティシャル広告を実装はできたのですが、広告が表示された後Closeボタンをクリックしても閉じることが
できません。Androidでの実機テストでも閉じれませんでした。どうか直す方法があったら教えていただけたら幸いです。

該当のソースコード

using UnityEngine; using GoogleMobileAds.Api; using System; using UnityEngine.Events; public class InterstitialAds : MonoBehaviour { // 関数を登録するもの:広告表示をしたときに実行する(Unityエディタから設定) public UnityEvent OnOpeningAd; // 関数を登録するもの:広告表示を閉じたときに実行する(Unityエディタから設定) public UnityEvent OnClosedAd; private InterstitialAd interstitial; GameObject gameManager; private void Start() { RequestInterstitial(); } // 広告読み込み:次の広告表示の前に実行しておく必要あり public void RequestInterstitial() { #if UNITY_ANDROID string adUnitId = "ca-app-pub-3940256099942544/1033173712"; #elif UNITY_IPHONE string adUnitId = "ca-app-pub-3940256099942544/4411468910"; #else string adUnitId = "unexpected_platform"; #endif // Initialize an InterstitialAd. this.interstitial = new InterstitialAd(adUnitId); DestroyInterstitialAd(); this.interstitial.OnAdLoaded += HandleOnAdLoaded; this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad; this.interstitial.OnAdOpening += HandleOnAdOpened; this.interstitial.OnAdClosed += HandleOnAdClosed; //this.interstitial.OnAdLeavingApplication += HandleOnAdLeavingApplication; // Create an empty ad request. AdRequest request = new AdRequest.Builder().Build(); // Load the interstitial with the request. this.interstitial.LoadAd(request); } // OnAdLoaded イベントは、広告の読み込みが完了すると実行されます。 public void HandleOnAdLoaded(object sender, EventArgs args) { MonoBehaviour.print("HandleAdLoaded event received"); } // OnAdFailedToLoad イベントは、広告の読み込みに失敗すると呼び出されます。Message パラメータは、発生した障害のタイプを示します。 public void HandleOnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args) { //MonoBehaviour.print("HandleFailedToReceiveAd event received with message: "+ args.Message); } // このメソッドは、広告がデバイスの画面いっぱいに表示されたときに呼び出されます。 public void HandleOnAdOpened(object sender, EventArgs args) { MonoBehaviour.print("HandleAdOpened event received"); OnOpeningAd.Invoke(); } // このメソッドは、ユーザーが「閉じる」アイコンまたは「戻る」ボタンをタップしてインタースティシャル広告を閉じたときに呼び出されます。音声出力やゲームループを一時停止するアプリの場合は、ここで再開すると効果的です。 public void HandleOnAdClosed(object sender, EventArgs args) { MonoBehaviour.print("HandleAdClosed event received"); OnClosedAd.Invoke(); RequestInterstitial(); DestroyInterstitialAd(); } //OnAdOpened の後にユーザーが別のアプリ(Google Play ストアなど)を起動し、現在のアプリがバックグラウンドに移動すると、このメソッドが呼び出されます。 public void HandleOnAdLeavingApplication(object sender, EventArgs args) { MonoBehaviour.print("HandleAdLeavingApplication event received"); } public void ShowInterstitialAd() { if (this.interstitial.IsLoaded()) { this.interstitial.Show(); } else { Debug.Log("まだ読み込みができていない"); } } // 一度リセット:次の広告表示の前に実行しておく必要あり public void DestroyInterstitialAd() { interstitial.Destroy(); } }

試したこと

Androidで実機テストをしたり誤字がないか確認したのですが治りません。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問