Xamarin.iOS ARKit演示项目出错:“当部署目标为11或更高版本时,不支持32位体系结构”

从https://developer.xamarin.com/samples/monotouch/ios11/ARKitSample/部署ARKit示例项目时,我得到构建错误Invalid architecture: ARMv7. 32-bit architectures are not supported when deployment target is 11 or later Invalid architecture: ARMv7. 32-bit architectures are not supported when deployment target is 11 or later

使用部署设备和我的开发机器的所有内容都会检查:

我在部署设备上运行iOS 11(iPhone 6S Plus – ARKit将无法在模拟器中运行),并安装了Xcode 9(并在启动Visual Studio for Mac之前启动了一次)。 Visual Studio for Mac也已更新到最新的Stable版本(此时Alpha版和Beta版本尚未提供ARKit)。

我正在发布下面这个问题的修复程序,希望能帮助其他人在iOS 11上使用ARKit进行开发。

我正在Visual Studio for Mac上构建ARKit项目,所以这个修复程序是为它量身定制的:

  1. 将设备连接到计算机,然后在构建按钮旁边的下拉菜单中选择它作为部署目标(具有播放箭头图标的按钮)。 这样,接下来的步骤就是更改设备的选项,而不是例如模拟器。
  2. 进入项目的iOS Build选项(双击项目名称,或右键单击项目名称并选择Options – > Build -> iOS Build
  3. 确保SDK Version设置为11.0 (ARKit仅适用于iOS 11及更高版本)
  4. 如果尚未将Linker behavior设置为“链接框架SDK”,请将其设置为“仅限链接框架SDK”
  5. 如果尚未将Supported architectures设置为ARM64则将其设置为ARM64
  6. 启用选项将Perform all 32-bit float operations as 64-bit float.

步骤#6是我修复构建错误的原因。