0
\$\begingroup\$

I've got an annoying problem considering video ads. I've tried different networks and for all video placements (Rewarded and Interstitial) I've got same problem: the Ad shows 1 frame, then disappears, but the ad sound remains. I think It is needed to enable something in Player settings, but I was not able to find what exactly. Banner ads work fine. Currently I am testing Ad Mob. The reward works fine, but the video ad just not displaying correctly.

The example of the ad show failure: https://youtu.be/ykgI4qGCg0c

My Unity version: 2019.1.9f1 Personal
Platform: iOS
Device: iPad mini 2

 void Start()
  {
 AdMobRewardedAd = RewardBasedVideoAd.Instance;
 // Called when an ad request has successfully loaded.
 AdMobRewardedAd.OnAdLoaded += HandleRewardBasedVideoLoaded;
 // Called when an ad request failed to load.
 AdMobRewardedAd.OnAdFailedToLoad += HandleRewardBasedVideoFailedToLoad;
 // Called when an ad is shown.
 AdMobRewardedAd.OnAdOpening += HandleRewardBasedVideoOpened;
 // Called when the ad starts to play.
 AdMobRewardedAd.OnAdStarted += HandleRewardBasedVideoStarted;
 // Called when the user should be rewarded for watching a video.
 AdMobRewardedAd.OnAdRewarded += HandleRewardBasedVideoRewarded;
 // Called when the ad is closed.
 AdMobRewardedAd.OnAdClosed += HandleRewardBasedVideoClosed;
 // Called when the ad click caused the user to leave the application.
 AdMobRewardedAd.OnAdLeavingApplication += HandleRewardBasedVideoLeftApplication;
// Initialize the Google Mobile Ads SDK.
 MobileAds.Initialize(appId);

 this.Load_rewarded_video();
}
//Google ad mob Handlers======================
public void HandleRewardBasedVideoLoaded(object sender, EventArgs   args)
{
 //MonoBehaviour.print("HandleRewardBasedVideoLoaded event received");
}
 public void HandleRewardBasedVideoFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
 Time.timeScale = 1;
 //MonoBehaviour.print(
 //    "HandleRewardBasedVideoFailedToLoad event received with      message: "
 //                     + args.Message);
 }
public void HandleRewardBasedVideoOpened(object sender, EventArgs args)
{
 //MonoBehaviour.print("HandleRewardBasedVideoOpened event received");
}
public void HandleRewardBasedVideoStarted(object sender, EventArgs args)
{
 //MonoBehaviour.print("HandleRewardBasedVideoStarted event received");
}
public void HandleRewardBasedVideoClosed(object sender, EventArgs args)
{
 //MonoBehaviour.print("HandleRewardBasedVideoClosed event received");
 Time.timeScale = 1;

 this.Load_rewarded_video();

 }
 public void HandleRewardBasedVideoRewarded(object sender, Reward args)
 {
 Time.timeScale = 1;
 ContinueGameCalculations();
 }
 public void HandleRewardBasedVideoLeftApplication(object sender, EventArgs args)
 {
 //MonoBehaviour.print("HandleRewardBasedVideoLeftApplication event received");
  }
  private void Load_rewarded_video()
  {
  #if UNITY_IOS
 string ad_unit = "ca-app-pub-5759662936416666/3614416666";
 #endif
 AdMobRewardedAd.LoadAd(new AdRequest.Builder().Build(), ad_unit);
 }

For some reason the very first test ad from Admob shows the way I described above, but the next ones work fine.

Update: the issue remains for both Rewarded and Interstitial Admob ad placements.

\$\endgroup\$
  • \$\begingroup\$ First test ad shows what way? Did you mean to include a picture? \$\endgroup\$ – Evorlor Jul 25 at 13:47
  • \$\begingroup\$ @Evorlor They initially posted the last line as an answer, which did not really fixed the issue. I reworded it, I hope it makes more sense now. \$\endgroup\$ – Alexandre Vaillancourt Jul 25 at 17:56
  • \$\begingroup\$ youtu.be/ykgI4qGCg0c - this is the video with the example of the first interstitial ad view failure.Earlier I thought the issue is gonna happen more often, one time is not that critical, however it is strange. \$\endgroup\$ – Pavel Motorin Jul 26 at 13:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.