内容
今回Unityでゲームアプリを開発しましてAdmobを導入しました。
ステージクリアのタイミングでインタースティシャル広告を表示するように
実装しているのですが広告を閉じるための閉じるボタンがどこにも出てこないことがあります。
上記のことが理由でAppleからアプリをリジェクトされてしまいました。
自分でテストをしたときは閉じるボタンは出てきたのでおそらくApple側で
レビュー中に下記のような広告が出てきたと思われます。
Googleの広告なのでどう解決すれば良いのか分からず途方にくれております。
もし何か解決策があればご教授いただければ幸いです。
void Start() { #if UNITY_IOS string appID = " ******* appIDが入ります ****** "; #endif MobileAds.Initialize(appID); RequestInterstitial(); } private void RequestInterstitial() { if (is_close_interstitial == true) { interstitialAd.Destroy(); } #if UNITY_IOS string adUnitID = " ******** adUnitIDが入ります ******** "; #endif interstitialAd = new InterstitialAd(adUnitID); // Create an empty ad request. AdRequest request = new AdRequest.Builder() .AddTestDevice(deviceID) .Build(); //Callback methods closed Interstitial interstitialAd.OnAdClosed += InterstitialAd_OnAdClosed; interstitialAd.OnAdFailedToLoad += InterstitialAd_OnAdFailedToLoad; // Load the intersitial with the request. interstitialAd.LoadAd(request); is_close_interstitial = false; } public void ShowInterstitial() { interstitialShow = true; } void InterstitialAd_OnAdClosed(object sender, System.EventArgs e) { is_close_interstitial = true; interstitialShow = false; interstitialAd.Destroy(); RequestInterstitial(); if (push_next_button) { NextStageTransition(); push_next_button = false; } else { RestartStage(); } } //広告のロードに失敗した時に走る void InterstitialAd_OnAdFailedToLoad(object sender, System.EventArgs e) { Debug.Log("インタースティシャル読み込み失敗"); is_close_interstitial = true; interstitialShow = false; StartCoroutine(_waitConnectforInterstitial()); } //次のロードまで30秒待つ IEnumerator _waitConnectforInterstitial() { while (true) { yield return new WaitForSeconds(30.0f); //ネットに接続できるときだけリロード if (Application.internetReachability != NetworkReachability.NotReachable) { RequestInterstitial(); break; } } }
回答1件
あなたの回答
tips
プレビュー