【问题标题】:Rewarded video from AdMob in Unity - loading so slow在 Unity 中来自 AdMob 的奖励视频 - 加载速度很慢
【发布时间】:2018-08-26 13:42:02
【问题描述】:

以前我使用 Unity Ads 在使用 unity 制作的游戏中显示插页式广告和奖励广告,但现在我改用 Google Ads (AdMob)。

我阅读了来自 here 和下一个来自 here 的文档,一切似乎都在工作,但有点慢。

我有 3 个场景:

  • 主菜单
  • 游戏
  • 商店

我需要在游戏和商店场景中展示奖励广告。在游戏场景中,用户可以在他死去的地方继续观看广告。他只有只有 5 秒可以做到这一点。如果他不看广告,那么他有能力以+25 硬币观看另一个广告、重新开始游戏或进入主菜单。在主菜单场景中,用户可以去商店购买更多角色,如果他观看奖励广告,这里还有一个 +25 硬币的按钮。因此,奖励广告有 3 个位置。

在主菜单脚本中,Start() 方法中有:

MobileAds.Initialize(appId);

问题是,当用户在主菜单场景中单击“存储”按钮时,在我正在调用的 Start() 方法中

// Create an empty ad request.
AdRequest request = new AdRequest.Builder().Build();
// Load the rewarded video ad with the request.
rewardBasedVideo.LoadAd(request, adUnitId);

用户可以立即点击“查看广告”按钮:

if (rewardBasedVideo.IsLoaded()) {
  rewardBasedVideo.Show();
}

还有一个问题...奖励广告还没有加载,它会在调用rewardBasedVideo.LoadAd(request, adUnitId);后1.5s - 2s后加载所以,用户必须多次点击它直到广告出现。

我检查了很多其他使用 AdMob 的游戏,每个游戏都会立即展示广告。如何?有没有办法预加载激励广告?

当出现死亡模式并且用户有 5 秒时间观看奖励广告直到他“完全死亡”但广告在大约 3 秒后可用时,这也是一个糟糕的用户体验。

同样在商店中,用户在观看完广告后,可以再次观看,所以在OnAdClosed 我提出了相同的加载新广告的逻辑,但它也很慢,几秒钟后广告实际加载了,我测试了其他游戏 - 他们没有这个问题。

你有什么建议吗?

【问题讨论】:

    标签: android unity3d admob game-development admob-rewardedvideoad


    【解决方案1】:

    你需要打电话

    rewardBasedVideo.LoadAd(request, adUnitId);
    

    应用启动后。 这将在提示用户观看时加载并准备广告。

    我通常有一个空的游戏对象,其中包含一个名为“AdManager”的脚本,用于加载广告。它对自身有一个静态引用(单例模式),所以我可以很容易地从其他脚本中调用它。

    这样,当应用启动时,广告就准备好了,当我想显示它时,我可以从任何我想调用的地方调用它。

    关于在前一个结束后显示一个新的。除了物理上必须等到加载之外,我没有看到可行的选择。 (请记住,广告在数据中可能非常大)

    【讨论】:

    • 是的,这正是我后来所做的,它解决了我最初的延迟问题,但观看广告后的延迟仍然存在。我不知道其他应用程序是如何处理这个问题的,但在其他应用程序中,观看广告之间没有延迟。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多