3

Android ゲームで Unity 広告を使用していましたが、Unity 広告が時々表示されない一部のデバイスを除いて、すべてが完全に機能していました。そこで、Admob の動画リワードをテストして、パフォーマンスが向上するかどうかを確認したいと思いました。Admob で使用しているコードは次のとおりです。

 public void RequestRewardBasedVideo()
    {
#if UNITY_EDITOR
        string adUnitId = "unused";
#elif UNITY_ANDROID
        string adUnitId = "ca-app-pub-243186545632812xxxxxxxxxxxx";
#elif UNITY_IPHONE
        string adUnitId = "unused";
#else
        string adUnitId = "unexpected_platform";
#endif

        RewardBasedVideoAd rewardBasedVideo = RewardBasedVideoAd.Instance;

        AdRequest request = new AdRequest.Builder().Build();
        rewardBasedVideo.LoadAd(request, adUnitId);
        showAdvertisment(rewardBasedVideo);
    }

    private void showAdvertisment(RewardBasedVideoAd rewardBasedVideo)
    {
        if (rewardBasedVideo.IsLoaded())
        {

            rewardBasedVideo.Show();
            rewardBasedVideo.OnAdRewarded += HandleRewardBasedVideoRewarded;
        }


    }
    public void HandleRewardBasedVideoRewarded(object sender, Reward args)
    {
        //reward 
    }

RequestRewardBasedVideo() をボタンに割り当てましたが、問題はビデオが表示されないことです! ボタンをクリックすると、コンソールに次のログが記録されるため、正しいパスにいると思います。

Dummy .ctor
Dummy CreateRewardBasedVideoAd
Dummy LoadAd
Dummy IsLoaded
Dummy ShowRewardBasedVideoAd

Android デバイスにアプリを配置して、Unity 用の Google Admob パッケージをインポートし、Admob パネルで広告を構成しました。これを解決するために私ができることについて、誰にもアイデアがありますか??

4

3 に答える 3

0

ビデオがロードされていない場合はどうなりますか? そのケースを処理し、load イベントをリッスンしてから、show を押す必要があります。

    if (rewardBasedVideo.IsLoaded())
        {

            rewardBasedVideo.Show();
            rewardBasedVideo.OnAdRewarded += HandleRewardBasedVideoRewarded;
        }else{
             rewardBasedVideo.OnAdLoaded += HandleVideoLoaded;
}



public void HandleVideoLoaded(object sender, Reward args)
{
     rewardBasedVideo.Show();
            rewardBasedVideo.OnAdRewarded += HandleRewardBasedVideoRewarded;
}


 public void HandleRewardBasedVideoRewarded(object sender, Reward args)
    {
       rewardBasedVideo.OnAdRewarded -= HandleRewardBasedVideoRewarded;
    }
于 2018-10-04T17:39:22.170 に答える