🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
AdMob

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

Android

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

Unity

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

Q&A

解決済

1回答

2636閲覧

UnityでAdMobのリワード広告を閉じることができません。

msunion

総合スコア4

AdMob

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

Android

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

Unity

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

0グッド

0クリップ

投稿2019/09/20 06:47

前提・実現したいこと

UnityでAdMobのリワード広告を表示したのですが、
Androidで広告を閉じることができません。

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

UnityでAdMobのリワード広告を表示したのですが、 Androidで広告を閉じることができません。 テスト用のAdMobAppIDをGoogleMobileAdsのSettingsに設定しています。 リワード用のIDもテスト用のIDを使用しています。 iOSでは問題なく表示できるのですが、Androidでは右上に表示される×ボタンを 押しても何も反応しません。 よろしくお願いします。

該当のソースコード

public class ResultScene : SceneObjectBase, FadeManager.IListener { BUTTON_ID m_clickButton; bool m_isRewardLoadFailed; private RewardedAd rewardedAd; public enum BUTTON_ID { BTN_NONE = -1, BTN_RETRY = 0, BTN_TITLE, }; // Start is called before the first frame update void Start() { m_isRewardLoadFailed = false; m_clickButton = BUTTON_ID.BTN_NONE; LoadReward(); } // Update is called once per frame void Update() { } public void clicked(BUTTON_ID bid) { switch (bid) { case BUTTON_ID.BTN_RETRY: { m_clickButton = bid; StartCoroutine("OpenReward"); break; } } } void LoadReward() { //動画広告(AdMob) { string adUnitId = ""; #if PLATFORM_IOS adUnitId = "ca-app-pub-3940256099942544/1712485313"; #elif PLATFORM_ANDROID #if DEBUG adUnitId = "ca-app-pub-3940256099942544/5224354917"; #else #endif this.rewardedAd = new RewardedAd(adUnitId); // 広告の読み込みが完了すると呼び出されます。 this.rewardedAd.OnAdLoaded += HandleRewardedAdLoaded; // 広告の読み込みが失敗したときに呼び出されます。提供された AdErrorEventArgs の Message プロパティは、発生した障害のタイプを示します。 this.rewardedAd.OnAdFailedToLoad += HandleRewardedAdFailedToLoad; // 広告がデバイスの画面いっぱいに表示されると呼び出されます。必要に応じて、アプリの音声出力やゲームループを一時停止することができます。 this.rewardedAd.OnAdOpening += HandleRewardedAdOpening; // 広告が表示されないときに呼び出されます。提供された AdErrorEventArgs の Message プロパティは、発生した障害のタイプを示します。 this.rewardedAd.OnAdFailedToShow += HandleRewardedAdFailedToShow; // ユーザーが動画の視聴に対して報酬を受け取る必要があるときに呼び出されます。Reward パラメータは、ユーザーに提示される報酬を説明しています。 this.rewardedAd.OnUserEarnedReward += HandleUserEarnedReward; // ユーザーが「閉じる」アイコンまたは「戻る」ボタンをタップして、動画リワード広告を閉じたときに呼び出されます。アプリで音声出力やゲームループを一時停止している場合は、ここで再開すると効果的です this.rewardedAd.OnAdClosed += HandleRewardedAdClosed; // Create an empty ad request. AdRequest request = new AdRequest.Builder().Build(); // Load the rewarded ad with the request. this.rewardedAd.LoadAd(request); } } //リワード表示開始 private IEnumerator OpenReward() { while (true) { if (this.rewardedAd.IsLoaded()) { this.rewardedAd.Show(); break; } else if(m_isRewardLoadFailed) { CloseStart(); break; } yield return new WaitForSeconds(0.2f); } } // 広告の読み込みが完了すると呼び出されます。 public void HandleRewardedAdLoaded(object sender, EventArgs args) { } // 広告の読み込みが失敗したときに呼び出されます。提供された AdErrorEventArgs の Message プロパティは、発生した障害のタイプを示します。 public void HandleRewardedAdFailedToLoad(object sender, AdErrorEventArgs args) { } // 広告がデバイスの画面いっぱいに表示されると呼び出されます。必要に応じて、アプリの音声出力やゲームループを一時停止することができます。 public void HandleRewardedAdOpening(object sender, EventArgs args) { } // 広告が表示されないときに呼び出されます。提供された AdErrorEventArgs の Message プロパティは、発生した障害のタイプを示します。 public void HandleRewardedAdFailedToShow(object sender, AdErrorEventArgs args) { } // ユーザーが「閉じる」アイコンまたは「戻る」ボタンをタップして、動画リワード広告を閉じたときに呼び出されます。アプリで音声出力やゲームループを一時停止している場合は、ここで再開すると効果的です public void HandleRewardedAdClosed(object sender, EventArgs args) { //MonoBehaviour.print("HandleRewardedAdClosed event received"); } // ユーザーが動画の視聴に対して報酬を受け取る必要があるときに呼び出されます。Reward パラメータは、ユーザーに提示される報酬を説明しています。 public void HandleUserEarnedReward(object sender, Reward args) { } }

試したこと

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

Mac環境でビルドしています。
UNITY 201.2.5f1
端末
403SH
OS
Android 5.0.2

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

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

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

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

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

guest

回答1

0

自己解決

別の端末にしたら×ボタンが押せました。

投稿2019/09/25 03:13

msunion

総合スコア4

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問