iOS 6中的iAd属性和方法已被弃用

8

自从发布iOS 6以来,一些iAd属性和方法已被弃用,例如:

currentContentSizeIdentifier
requiredContentSizeIdentifiers
ADBannerContentSizeIdentifierPortrait
ADBannerContentSizeIdentifierLandscape

那么现在在两个方向上实施iAd的最佳方式是什么呢?我们现在是否需要手动调整横幅视图的大小?
3个回答

12

我的应用程序只支持横屏模式(也应该适用于纵向模式),并且在应用程序顶部显示 iAd。为了使其与 iOS 6 兼容,我必须执行以下操作:

在 Monotouch 中

storesAdBannerView = new ADBannerView();
storesAdBannerView.AutoresizingMask = UIViewAutoresizing.FlexibleWidth;

对于我不使用的 objc,我认为可能是:

[storesAdBannerView setAutoresizingMask:UIViewAutoresizingFlexibleWidth]

哦,没错,使用AutoresizingMask非常容易实现! - Yaman
不行。如果你删除了那些已弃用的代码行并什么都不加,它仍然可以像上面的解决方案一样正常工作。这似乎修复了问题,因为你使用了“ADBannerContentSizeIdentifierPortrait”。如果你使用横向模式,这将破坏你的应用程序。 - Albert Renshaw

2

是的,我很惊讶在苹果文档中没有这些被弃用功能的替代品:/ - Yaman
开发者论坛表示这不正确,并且横幅广告仍然支持iOS6:https://devforums.apple.com/message/755532#755532我能够在iPhone 5上让它们工作,但是当处于横向时,iPad始终显示768宽而不是1024。 - SmartyP

1

我看到了两个解决方法:http://www.touch-code-magazine.com/iad-code-is-broken-in-ios6/ 我测试了第一个解决方案:

简单的临时解决方案 - 通过使用廉价的技巧,将 #import 明确添加到访问 currentContentSizeIdentifier 和大小名称常量的文件中,您可以快速使应用程序再次编译。这样做可以让您继续使用应用程序,直到您修改应用程序以使用新的自动布局功能。

在 xcode 4.5 上运行良好(横幅测试正常)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接