0

在我在 IOS4 上编译我的应用程序后,我的应用程序停止在 ipod touch 上工作。它是第一代 ipod touch,上面装有 os 3。所以我假设 OS4 的应用程序不能在旧的 ipodtouches 上运行?但是应用商店没有争吵,它甚至也被列出供 ipod touch 下载。有任何想法吗 ?

基本 SDK 是 iphone 设备 4,开发目标是 iphone os 3。我使用 os 3 在 iphone 上工作,但是当我在 os 3.1.3 的 ipod touch 上尝试它时它崩溃了。我收到此错误 mi_cmd_stack_list_frames: 堆栈中没有足够的帧。我在 main.m 上添加了一个中断,甚至在到达 main.m 的第一行之前应用程序就崩溃了。调试没问题,当我尝试在设备上运行它时它崩溃了。它在模拟器中运行良好。

还有一件事,这是一个通用应用程序,我正在使用 uisplitview 控制器..所以我认为当它在 os 3 上运行时它会中断.. 有没有办法解决这个问题?

4

2 回答 2

0

为 iOS 4.0 构建的应用程序将无法在 3.0 的设备上运行。请注意,在 App Store 中,“要求:”下有一个部分显示“需要 iOS 4.0 或更高版本”。在这种情况下。

于 2010-07-13T22:56:10.543 回答
0

好的!!!我假设我的 main.m 会完成这项工作并指向正确的 appdelegate,但显然我仍然需要检查这些类是否存在。所以这是答案

Class splitVCClass = NSClassFromString(@"UISplitViewController");
if (splitVCClass)
{
        //UISplitViewController* mySplitViewController = [[splitVCClass alloc] init];
    UISplitViewController* _splitViewController = [[splitVCClass alloc]init];
    [_splitViewController setViewControllers:[NSArray arrayWithObjects:_rootNavigationController,_navigationController,nil]];
}

美好的结局。

于 2010-07-14T23:36:21.123 回答