Dear Developer,
As we announced in October,beginning February 1,2015 new iOS apps
submitted to the App Store must include 64-bit support and be built
with the iOS 8 SDK. Beginning June 1,2015 app updates will also need
to follow the same requirements. To enable 64-bit in your project,we
recommend using the default Xcode build setting of “Standard
architectures” to build a single binary with both 32-bit and 64-bit
code.If you have any questions,visit the Apple Developer Forums.
Best regards,Apple Developer Technical Support
现在我有一个问题,您如何确保iOS应用程序与64位兼容?
我的构建设置如下所示:
我的部署目标是iOS 6.0.
我只需要确认该应用程序是64位兼容的,我都是iOS新手,不久前接管了一个相当大的项目,所以我宁愿要求100%肯定.
只是为了使事情变得更清楚,你如何确保iOS应用程序是64位兼容的?我知道你需要设置某些构建规则,例如图像中的一些,但是我想知道有没有办法知道你的iOS应用程序是64位兼容的. 32位iOS应用程序可以在64位硬件上运行,所以我不相信检查iOS应用程序是否在设备上运行会有所帮助.
我相信你可以上传一个新版本,看看你是否收到这个消息:但是我希望有一个很好的选择,而不上传新的构建.
谢谢!
解决方法
只是因为它运行在64位设备上,并不意味着它具有64位的支持. 64位设备可以运行32位应用程序.
要确定它是否包含一个arm64块,您需要找到应用程序.转到Xcode首选项,然后选择“位置”标签.派生数据行告诉您正在构建文件的位置.
打开终端(Finder->应用程序 – >实用程序 – >终端),并使用’cd’命令转到该位置.在我的情况下,我的项目存储在〜/ MyProject中
$cd ~/MyProject $cd build $find . -name MyTarget ./build/MyTarget ./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app/CoreControl ./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app.dSYM/Contents/Resources/DWARF/CoreControl
现在我们知道二进制存储在哪里(这是第二个结果),我们可以检查它,看看它包含哪些体系结构:
$dwarfdump ./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app/MyTarget ---------------------------------------------------------------------- File: ./build/MyTarget/Build/Products/Debug-iphoneos/MyTarget.app/MyTarget (armv7) ---------------------------------------------------------------------- .debug_info contents: < EMPTY >
在我的情况下,我只有arm7建立,而不是arm64.