【发布时间】:2016-04-03 22:46:05
【问题描述】:
iOS 9.3、Xcode 7.3、ARC 已启用。
我正在从 iAd 迁移,我有一些关于最佳设计模式以及如何正确使用 Google 移动广告框架进行横幅样式广告的一般性问题。
-
您如何控制广告加载和加载失败的展示?
我的典型方法是从隐藏横幅视图开始,检测广告何时加载,然后从顶部或底部为横幅视图设置动画,或者从替代图像淡入。
我注意到
GADBannerView类没有 iAd 横幅的一些更方便的属性,例如isLoaded。a) 现在我利用
- (void)adViewDidReceiveAd:(GADBannerView *)bannerView和- (void)adView:(GADBannerView *)bannerView didFailToReceiveAdWithError:(GADRequestError *)error这两种方法,当任一方法收到消息时为视图控制器设置一个实例变量 bool,然后将该变量用于其他任何其他 UI 更改。这是一个好的设计实践吗?b) “删除”,动画作品。
c) 当广告无法加载时,横幅视图会发生什么情况?我注意到它的 alpha 属性仍然是 1.0 并且它没有被隐藏。在生产环境中,当 AdMob 广告无法加载时,横幅是否清晰?还是它有一个通用的替代图像?换句话说,我是否必须在图像中滑动以平衡没有横幅视图的视图?
我从基本的 AdMob 教程中了解到,横幅的位置并不重要,它可以在多个视图控制器中,框架将管理如何填充这些多个横幅。有人可以确认这种行为吗?比如说,我有两个视图控制器,我有两个不同的横幅视图,我不必管理广告?我所要做的就是提供横幅视图房地产?
一般来说,如果我曾经有 iAd 用于广告和应用内。通过 iTunes 购买,那么现代趋势是什么?我应该通过 AdMob 投放广告并保留在应用内吗?通过 Apple 购买?这就是人们现在正在做的事情吗?
提前感谢您的回答。我知道这可能太笼统了,但在我向 Apple 提交任何内容之前,我真的想对去向有一个基本的了解。
--
这是我正在使用的动画代码:
- (void)adViewDidReceiveAd:(GADBannerView *)bannerView
{
bannerDidLoad = true;
[UIView animateWithDuration:1.0 animations:^{
bannerView.alpha = 1.0;
bannerView.frame = CGRectMake(bannerView.frame.origin.x, bannerView.frame.size.height, bannerView.frame.size.width, bannerView.frame.size.height);
} completion:^(BOOL finished) {
nil;
}];
}
【问题讨论】:
标签: ios objective-c admob iad