如何仅在某些视图上显示iad



我有一款基于iOS Sprite Kit的游戏,我正试图将其整合到ipad中。

我一直在阅读ipad的各种最佳实践,我有几个问题。

我的游戏有四个状态:

  1. 主菜单
  2. 游戏
  3. 游戏结束菜单

我想在每个状态的屏幕顶部显示横幅广告,除了实际的游戏内状态,因为我不希望横幅干扰游戏玩法。

苹果的最佳实践说

如果用户从带有横幅视图的内容屏幕导航到没有横幅视图的屏幕,而您希望它们处于打开状态使屏幕长时间从横幅视图中移除将它的委托设置为nil,并在此之前释放它过渡到新的内容屏幕。更一般地说,避免在用户不可见的情况下保持横幅视图。

我的问题是,我不知道他们可以在一个菜单上多长时间。例如,他们可以在看到游戏屏幕后的2秒内点击重试,或者他们可以坐在那里5分钟查看自己的高分。


所以我的问题是:在这种情况下,我应该只有一个广告横幅,我只是隐藏,例如使用adBannerView.hidden = YES;,然后取消隐藏,当我在一个屏幕上,应该显示一个广告?

或者我是否应该在每次用户进入应该显示广告的状态时创建一个新的横幅视图?这样做的好处是,当用户暂停时,广告将立即显示出来,并且在广告显示之前不会有几秒钟的延迟。

或者我是否应该想出一个使用计时器的解决方案,如果用户在广告支持的视图上停留超过5秒,广告就会显示出来?

我个人会首先设置self。canDisplayBannerAds = true;然后就像你上面说的,在需要的时候隐藏和显示横幅。我已经在一款名为《outer clouds》的精灵套件游戏中这样做了,如果你想下载它来检查广告加载速度,它的效果很好。这种方式唯一的缺点是广告会被更频繁地循环使用,所以你的填充率并不能真正反映发生了什么。希望对大家有所帮助

最新更新