Как исправить «interstitialAd.IsLoaded () возвращает true в автономном режиме» (Unity C #) - PullRequest
0 голосов
/ 10 июня 2019

interstitialAd.IsLoaded () всегда возвращает true, даже если устройство находится в автономном режиме.он работает нормально, когда приложение подключено к сети.

public class InsAdBanner : MonoBehaviour
{

    public int SceneIndex;
    private InterstitialAd interstitialAd;


    void Start()
    {
        this.RequestInterstitial();
    }

    void RequestInterstitial()
    {
        string interstitial_ID = "ad_id";
        interstitialAd = new InterstitialAd(interstitial_ID);

        if (this.interstitialAd != null)
        {
            this.interstitialAd.Destroy();
        }

        this.interstitialAd.OnAdLoaded += HandleOnAdLoaded;
        this.interstitialAd.OnAdFailedToLoad += HandleOnAdFailedToLoad;
        this.interstitialAd.OnAdOpening += HandleOnAdOpened;
        this.interstitialAd.OnAdClosed += HandleOnAdClosed;
        this.interstitialAd.OnAdLeavingApplication += HandleOnAdLeavingApplication;


        AdRequest adRequest = new AdRequest.Builder().Build();

        interstitialAd.LoadAd(adRequest);
    }

    public void Display_InterstitialAD()
    {
    <!-- plz see this line below -->

        if (interstitialAd.IsLoaded())
        {
            Debug.Log("interstitialAd " + interstitialAd.IsLoaded());
            interstitialAd.Show();
        }
        else {
            getOut();
        }

    }

    public void getOut() {
        interstitialAd.Destroy();
        SceneManager.LoadScene(SceneIndex);
        restertAdCounter.restertsAdCouner += 1;
    }

    #region Interstitial callback handlers

    //Handle event

    public void HandleOnAdLoaded(object sender, EventArgs args)
    {
        MonoBehaviour.print("HandleAdLoaded event received");
    }

    public void HandleOnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
    {
        RequestInterstitial();
    }

    public void HandleOnAdOpened(object sender, EventArgs args)
    {
        MonoBehaviour.print("HandleAdOpened event received");
    }

    public void HandleOnAdClosed(object sender, EventArgs args)
    {
        SceneManager.LoadScene(SceneIndex);
    }

    public void HandleOnAdLeavingApplication(object sender, EventArgs args)
    {
        SceneManager.LoadScene(SceneIndex);
    }

    #endregion

    void OnDisable()
    {
        this.interstitialAd.OnAdLoaded += HandleOnAdLoaded;
        this.interstitialAd.OnAdFailedToLoad += HandleOnAdFailedToLoad;
        this.interstitialAd.OnAdOpening += HandleOnAdOpened;
        this.interstitialAd.OnAdClosed += HandleOnAdClosed;
        this.interstitialAd.OnAdLeavingApplication += HandleOnAdLeavingApplication;
    }

        void OnDestroy()
    {
        interstitialAd.Destroy();
    }
}

Я ожидаю, что он вернет false в автономном режиме .. Он работает нормально, когда устройство подключено к сети .., но создает эту проблему, когда устройство находится в автономном режиме .. plz help .. Я не могу найти какое-либо решение вgoogle.

Редактировать: он не работает и в Интернете. После добавления настоящего объявления вместо тестового объявления возникает эта проблема.

1 Ответ

0 голосов
/ 10 июня 2019

Решил мою проблему, изменив Минифицировать-> Восстановить-> Proguard на Минифицировать-> Восстановить-> Нет в настройках игрока. (Хотя я не знаюкак на самом деле это работает)

...