2009-07-24 96 views
1

我们刚刚发布了我们的第一个iPhone应用程序更新,一些用户抱怨说 - 安装更新后 - 应用程序在启动后崩溃。显然,重启电话解决了这个问题。下载更新后iPhone应用程序崩溃

我们对AppDelegate所做的唯一更改是添加了Pinch Media Analytics库,该库似乎不是罪魁祸首。我们在网上发现文章说,这曾经是一个常见问题,它与DRM问题或类似的事情有关。

我们的应用程序需要OS 2.2.1,但Pinch Media文档说在Xcode构建设置中将“Base SDK”更改为3.0,将“Target OS”更改为2.2.1。我没有听说过这种技术会导致问题。也许我只是在黑暗中?

任何意见将不胜感激!

回答

0

我相当有信心将Base SDK更改为3.0意味着您的应用只会被编译为针对3.0固件(或更高版本)运行。我认为“目标操作系统”设置决定了iTunes中显示的最低支持固件,但实际上并不意味着它将在< 3.0上运行。

+0

此外,FWIW,我遇到了我自己的应用程序的混乱。我的应用*需要3.0,我相应地更改了基础SDK。但是,我忘记更新“目标操作系统”设置,这意味着在iTunes中,所需的最低版本仍然显示为2.2.1。 但是,它仍然正确地编译为3.0,意味着3.0上的那些将没有问题,但试图在2.2.1上运行它的那些将在启动时看到它崩溃。 – 2009-07-24 18:24:07

1

您应该很好地将目标操作系统更改为2.21,但更改Base SDK将使用3.0版本中的实际头文件来编译(并运行)您的应用程序。

Base SDK设置指的是xCode在编译应用程序时将使用的SDK版本。根据苹果当前的要求,任何您要发布到商店必须的应用程序必须在3.0 SDK下工作。使用3.0 Base SDK构建的应用程序可能无法正常运行,或者甚至无法编译,如果您尝试使用早期版本的SDK进行编译。尽管为编写的应用程序应该只需要重新编译2.21 SDK以在安装3.0的手机上运行。

您可以在Apple的开发人员网站上的部分中找到有关iPhone Reference Library的更多信息。这对于教程,论坛,视频甚至示例代码来说都是非常好的资源。它还包含不同版本SDK的更新日志(例如,现在有几个测试版发布)。