最近我将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会拒绝我的应用吗?
由于
答案 0 :(得分:1)
如果您的设备iOS版本低于4.2,则会因为ADBannerContentSizeIdentifierLandscape
和ADBannerContentSizeIdentifierPortrait
没有声明而崩溃。您可以检查并查看iOS设备的版本,并仅在版本为4.2或更高版本时添加ADBannerContentSizeIdentifierPortrait
和ADBannerContentSizeIdentifierLandscape
,但您可以安全地使用ADBannerContentSizeIdentifier480x32
和{{1 }}
以下是有关如何执行此操作的示例:Check iPhone iOS Version