以前,我用团结广告来显示我的游戏中的间隙广告和奖励广告,但现在我转而使用谷歌广告(AdMob)。
我阅读了来自这里和这里的文档,所有的东西似乎都在工作,但速度有点慢。
我有三个场景:
我需要展示奖励广告在游戏和商店的场景。在游戏场景中,用户有能力观看广告继续他的死亡。他只有5秒的时间去做。如果他不看广告,那么他就有能力再看另一个25枚硬币的广告,重新开始游戏或进入主菜单。在主菜单场景中,用户可以去商店购买更多的字符,如果他观看奖励广告,这里还有一个+25硬币的按钮。因此,有3个地方的奖励广告。
在主菜单脚本中,Start()方法中有:
MobileAds.Initialize(appId);问题是,当用户单击主菜单场景中的"Store“按钮时,在我调用的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();
}有个问题..。奖励广告仍然没有加载,它将加载1.5s -2从调用rewardBasedVideo.LoadAd(request, adUnitId);,因此,用户必须点击它多次,直到广告出现。
我检查了很多其他游戏,其中使用AdMob和每一个游戏立即显示广告。多么?有办法预装奖励广告吗?
这也是一个坏的UX,当死亡模式出现,用户有5s观看奖励广告,直到他是“完全死亡”,但广告后,~3。
在商店里,看完广告后,用户可以再看一次,所以在OnAdClosed中,我输入了同样的逻辑来加载新广告,但速度也很慢,几秒钟后,广告被实际加载,我测试了其他游戏--他们没有这个问题。
你有什么建议吗?
发布于 2018-08-26 14:40:47
你需要打电话
rewardBasedVideo.LoadAd(request, adUnitId);一旦应用程序启动。这将加载和准备广告时,提示用户观看它。
通常,我有一个空的游戏对象,它有一个名为"AdManager“的脚本来加载广告。它具有对自身的静态引用(单例模式),因此我可以轻松地从其他脚本调用它。
这样,当应用程序启动时,广告就准备好了,当我想要显示它时,我可以在任何我想要的地方调用它。
在上一次结束后显示一个新的。除了身体上的等待,我看不出有什么可行的选择。(请记住,广告在数据方面可能相当大)
https://stackoverflow.com/questions/52026833
复制相似问题