从 https://developer.xamarin.com/samples/monotouch/ios11/ARKitSample/ 部署 ARKit 示例项目时,我收到构建错误 Invalid architecture: ARMv7。当部署目标为 11 或更高版本时,不支持 32 位架构
。
所有与部署设备和我的开发机器一起检查:
我在部署设备上运行 iOS 11(iPhone 6S Plus - ARKit 不会在模拟器中运行),并且安装了 Xcode 9(并且在启动 Visual Studio for Mac 之前启动过一次)。 Visual Studio for Mac 也已更新到最新的稳定版本(ARKit 目前在 Alpha 和 Beta 版本中不可用)。
我在下面发布了此问题的修复程序,希望它能帮助其他将在 iOS 11 上使用 ARKit 进行开发的人。
最佳答案
我正在 Visual Studio for Mac 上构建 ARKit 项目,因此此修复程序是为它量身定制的:
- 将您的设备连接到计算机,然后在构建按钮(带有播放箭头图标的按钮)旁边的下拉菜单中选择它作为部署目标。这是为了让接下来的步骤改变您设备的选项,而不是例如模拟器。
- 进入项目的 iOS Build 选项(双击项目名称,或右键单击项目名称并选择 Options ->
Build -> iOS Build
- 确保
SDK Version
设置为11.0
(ARKit 仅适用于 iOS 11 及更高版本) - 将
Linker behavior
设置为“Link Framework SDKs Only”(如果尚未设置) - 将
Supported architectures
设置为ARM64
(如果尚未设置) - 启用选项
Perform all 32-bit float operations as 64-bit float。
第 6 步为我修复了构建错误。
关于c# - Xamarin.iOS ARKit 演示项目错误 : “32-bit architectures are not supported when deployment target is 11 or later",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46392966/