删除iAD后无法实例化名为ADBannerView的类

时间:2013-12-18 20:22:42

标签: ios iad

我花了大约4个小时调试的奇怪之处: 由于未捕获的异常'NSInvalidUnarchiveOperationException'而终止应用程序,原因:'无法实例化名为ADBannerView的类'

我曾经拥有iAD然后将其删除。现在我使用Google AdMob。

我已设置宏以确定免费/付费版本。在应该展示广告的免费版本上,一切都很好,它会显示AdMob广告。

在没有调用任何广告的付费版本中,我收到此错误:由于未捕获的异常'NSInvalidUnarchiveOperationException'而终止应用,原因:'无法实例化名为ADBannerView的类'

我唯一能想到的是我可能在某个地方有一个旧的iAd Banner View,但我找不到它!

任何提示?

另外:在模拟器上一切正常。

2 个答案:

答案 0 :(得分:0)

您是否检查过以确保Interface Builder中没有ADBannerView?您看到的那种错误表明该应用正在尝试在某处创建一个。

答案 1 :(得分:0)

受过教育的猜测:

您使用的是UI State Preservation&恢复API?如果是,则从application:shouldSaveApplicationState:返回NO以消除当前保存的状态。

一旦有效,您应该实施某种恢复version checking以防止用户设备崩溃。

如果这不起作用,或者您没有使用状态恢复,请尝试从设备中删除该应用。如果从Xcode部署文件仅添加,则永远不会删除。因此,旧文件可能引用ADBannerView。删除应用程序以删除此类孤立文件。

编辑:该链接会将您带到“编码版本信息以及应用程序的其余状态”。部分。它没有,但您会在页面底部找到有关版本检查的小信息。