AdMob加载问题

时间:2017-05-22 07:57:39

标签: android unity3d admob ads

我正在使用AdMob for Unity来构建我正在构建的Android游戏。

我遇到的问题是奖励广告在准备就绪时没有显示。

有问题的代码。

if(rewardBasedVideoAd.IsLoaded())
{
    ErrorLog.text = "Ad Is Loaded.";
    rewardBasedVideoAd.Show();
}

IsLoaded返回true,意味着广告已准备好展示,错误标签正在采用新值“Ad Is Loaded”。但广告本身并不是一直显示的。

有时会在第一次点击时显示,有时则不显示,只需点击几下即可显示。

这对用户来说似乎有点烦人,所以有人知道为什么会这样,我错过了什么。

如果这不是一个简单的解决方法,我可以尝试一个循环,尝试点击它几次,直到它被显示。

修改

感谢重复的答案,但问题不在于IsLoaded()返回false,因为它返回true并在ad.Show()函数旁边的日志中显示一条消息。

CODE SNIPPETS

void Start () {
    RequestRewardBasedVideo();
}

private void RequestRewardBasedVideo()
    {
        AdReady = false;
        string adUnitId = "ca-app-pub-XXXXXXXXXXXXXXXX/XXXXXXXXXX";

        rewardBasedVideo.OnAdRewarded += HandleOnAdRewarded;
        rewardBasedVideo.OnAdClosed += HandleOnAdClosed;
        rewardBasedVideo.OnAdFailedToLoad += HandleOnAdFailedToLoad;

        AdRequest request = new AdRequest.Builder().Build();
        rewardBasedVideo.LoadAd(request, adUnitId);
        ErrorBox.text = "Ad Loaded!";

    }

public void ShowRewardVideo()
    {
        if(rewardBasedVideo.IsLoaded())
        {
            ErrorBox.text = "Ad Shown!";
            rewardBasedVideo.Show();
        }
        else
        {
            ErrorBox.text = "ADmob ad not loaded!";
        }
    }

public void ClickConfirmWatch()
    {
        ShowRewardVideo();
    }

0 个答案:

没有答案