4

我构建了一个通用应用程序,可以在 iPad、iPhone 4G、3GS 和 3G 上完美运行,但在 iPod Touch 4G 上运行时无法正常运行。

我没有要测试的 iPod Touch,但是 beta 测试人员告诉我,它可以很好地安装在设备上,但是在运行时它会显示 iPad 版本的应用程序的 Default.png 在启动时被挤压到屏幕上,然后从那里变黑。当应用程序被强制退出(使用应用程序切换器)并重新启动时,它会再次执行相同的操作。

我已经仔细检查了目标设备系列是 iPhone/iPad 并完成了干净的构建等,但仍然没有骰子。

4

4 回答 4

8

因此,经过反复试验,我弄清楚了问题所在(实际上是两个独立但相关的问题):

在我的info.plist我使用两个键来分配不同的 MainWindow 文件:

Main nib file base name (iPad)

Main nib file base name (iPhone)

我错误地认为第二个键也适用于 iPod Touch,因为没有Main nib file base name (iPodTouch)键。事实证明这是错误的,iPod Touch 实际上是在寻找Main nib file base name密钥。所以现在我有这样的设置:

替代文字

..它在 3.1.3 和 4.2 中运行良好。(请注意,application:didFinishLaunchingWithOptions如果设备找不到要使用的 MainWindow,则不会调用它,这就是我解决问题的方法)。

我怀疑这同样适用于Launch image (iPad),Launch image (iPhone)Launch image键,这可以解释为什么 iPod Touch 使用 iPad 启动图像但还没有尝试过。

于 2010-12-21T01:50:29.560 回答
0

我不确定它是否会起作用,但它可能会对您有所帮助。

确保在 InterfaceBuilder 中,检查了主窗口中的属性(visibleAtLaunch)。

有时如果它没有检查,那么它会显示黑屏。

于 2010-12-18T05:44:36.393 回答
0

目前有一种越狱技术,它使用一些 iPad 固件安装在 iPhone 或 iPod Touch 上。理论上它不应该影响任何事情,但我自己从来没有做过,所以我不能保证。您可能会问此测试仪是否在越狱设备上,如果是,请在非越狱设备上尝试。

于 2010-12-18T06:03:21.367 回答
0

确保Default.pngs 被正确命名:

  • Default.png(默认)
  • Default~iphone.png(iPhone 或 iPod touch)
  • Default~ipad.png(iPad)

对于 iPad 资源,您还可以为每个方向指定某些默认 PNG。

于 2010-12-18T02:38:12.330 回答