You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode 13.1加载Xcode 12创建的项目时崩溃问题求助

故障根因

Xcode 13.1崩溃是因为Info.plist的字段格式校验逻辑比Xcode 12更严格:报错中-[__NSArrayM allKeys]: unrecognized selector说明Xcode解析plist时预期读取字典类型的字段,实际读到的是可变数组类型,调用字典专属的allKeys方法时触发异常崩溃。

排查解决步骤
  • 优先检查Info.plist中3类高频出问题的系统字段:
    • CFBundleURLTypes字段:确认该数组下的每一项是字典类型,没有误写成数组嵌套数组的结构
    • 移动端项目的UIApplicationSceneManifest/桌面端项目的NSApplicationSceneManifest字段:检查其中UISceneConfigurations/NSSceneConfigurations下的子项类型,确认所有配置项为字典而非数组
    • 自定义多层级嵌套字段:确认所有本该是键值对的层级没有误写为数组
  • 快速排查方法:右键点击项目中的Info.plist,选择Open As -> Source Code查看源码格式,对比所有字段标签,<dict>开头的节点不要误写为<array>
  • 验证方案:将现有Info.plist替换为新建Xcode 13项目自动生成的默认Info.plist,确认替换后Xcode不再崩溃后,逐步将自定义配置移入新plist,即可定位出问题的具体字段
常见错误示例

错误写法(CFBundleURLTypes子项误写为数组):

<key>CFBundleURLTypes</key>
<array>
  <array>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>myapp</string>
    </array>
  </array>
</array>

正确写法(子项为字典类型):

<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>myapp</string>
    </array>
  </dict>
</array>

内容的提问来源于stack exchange,提问作者Igor Jorin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 02:54:06