我已经使用基本 SDK ios 5.0 创建了一个针对 ios 4.1 的应用程序,并使用 3G(ios 4.3.3) 3GS(5.1) 3GS(5.0) iPad(5.1) 对其进行了测试。我的应用在所有这些设备上都表现良好。但是,当苹果最终接受该应用程序并且我将其下载到相同的设备上时,行为发生了变化。问题是显示的页面过大,但如果我移动它们,它们会正确开始适合屏幕。当应用发布后改变其行为时,你们中是否有人遇到过类似的情况?
而最重要的。当在真实设备上从 mac 运行的同一个应用程序表现出色时,我该如何重现此错误?我可能会补充说,基本 SDK 设置为最新(5.0),但应用程序使用不支持 ios 5.1 的 XCode 4.2 存档。
对我好一点,这是我的第一个问题:)
编辑:在 hotpaw 的有用提示之后,我检查了问题是发布版本。在运行配置中更改目标后,我可以在设备上重现该错误。从调试到发布。
有趣的是,令人沮丧的是,我无法解决这个问题,但是,我已经在 xcode 4.3 上以发布模式测试了我的应用程序,它运行良好。我没有改变任何东西,但它有效。它无法打包构建(请参阅问题Xcode 4.3.1 - 打包操作失败),所以我坚持使用 xcode 4.2
有一段时间我怀疑该错误是由编译器在为 thumb 编译时引起的,解决方案是将 -mno-thumb 添加到其他 c 标志。但是我没有强制使用该标志。请参阅:iOS5 Xcode4.2 浮点字节对齐错误?
当我比较编译日志时,我可以看到 xcode 4.3 使用 -arch armv6 编译,而 xcode 4.2 使用 -arch armv6 编译。但它与我连接到计算机的设备相同。我没有发现其他差异,但它们可能存在。如果有帮助,我可以粘贴示例文件的编译日志。