有人可以帮我弄清楚我的应用程序在iPad上运行时崩溃的原因。罪魁祸首是不受支持的框架 - iAd

时间:2010-11-02 23:23:20

标签: iphone objective-c cocoa-touch ipad sdk

我在这里已经阅读了很多关于弱连接的问题和答案,在执行代码之前检查一个类是否有效等等。我的应用程序基本上已经完成并准备就绪(至少我认为它是我商店的第一个应用程序)但是我需要解决这个问题,以便我的应用程序本身可以在iPad上运行。

我收到的错误如下: *由于未捕获的异常'NSInvalidUnarchiveOperationException'而终止应用程序,原因:'* - [NSKeyedUnarchiver decodeObjectForKey:]:无法解码类的对象(ADBannerView)'

我向你提出的问题是,我在我的课程标题中设置了一些IBOutlet属性。例如; @property(非原子,保留)IBOutlet ADBannerView * tollBanner;

尝试在iPad上运行应用时,此属性是否会导致问题?如果ADBannerView类不是nil,我在viewDidLoad方法中添加了一些条件。同样在我的dealloc方法中,我正在发布这些ADBannerView对象。

我很感激任何对此和TIA的帮助。

Ť

2 个答案:

答案 0 :(得分:3)

对象的创建可能是从nib / xib派生的。

如果您的nib / xib需要在某些平台/ OS版本上可用的自定义类,则必须:

1)以编程方式添加

-OR -

2)创建多个nib(对于每个本地化),然后加载特定于当前运行时的nib

在大多数情况下,前者听起来更简单。

(ps:callstack会帮助)

答案 1 :(得分:1)

根据ADBannerView的{​​{3}}:

  

适用于iOS 4.0及更高版本。

iPad的iOS版本目前为3.2 *,因此您无法在iPad上使用此类。

* 4.2最近被播种给了开发人员(如果媒体报道是准确的),但无论硬件如何,你的应用程序都会在运行iOS 4.0之前的iDevices上崩溃。