广告横幅内容尺寸崩溃设备?

时间:2011-09-17 07:38:25

标签: ios ios4 exc-bad-access deprecated iad

最近我将iAD集成到我的项目中,同时将adBannerView的大小设置为纵向或横向,我使用

 [_adBannerView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifier480x32];

 [_adBannerView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifier320x50];

这可以在模拟器上运行,但是我收到警告说代码已被弃用。所以我将代码更改为

 [_adBannerView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifierLandscape];

 [_adBannerView setCurrentContentSizeIdentifier: ADBannerContentSizeIdentifierPortrait];

并且警告消失了,我在我的模拟器上工作正常。 但是,当我在我的设备上测试我的应用程序(iOS 4.1)时,GDB给了我一个EXC_BAD_ACCESS错误。当我切换回早期的代码(480x32)时,应用程序在我的设备上正常工作。

简而言之,我的设备可以运行使用弃用的iAD方法的应用程序,并在使用当前的iAD方法时崩溃。

任何人都知道为什么?另外,如果我使用弃用方法,Apple会拒绝我的应用吗?

由于

1 个答案:

答案 0 :(得分:1)

如果您的设备iOS版本低于4.2,则会因为ADBannerContentSizeIdentifierLandscapeADBannerContentSizeIdentifierPortrait没有声明而崩溃。您可以检查并查看iOS设备的版本,并仅在版本为4.2或更高版本时添加ADBannerContentSizeIdentifierPortraitADBannerContentSizeIdentifierLandscape,但您可以安全地使用ADBannerContentSizeIdentifier480x32和{{1 }}

以下是有关如何执行此操作的示例:Check iPhone iOS Version