Info.plist 中未定义的字典

Posted

技术标签:

【中文标题】Info.plist 中未定义的字典【英文标题】:Undefined dictionary in Info.plist 【发布时间】:2018-09-04 22:44:33 【问题描述】:

9 月 4 日 18:26:17 MacBook-Pro-77 com.apple.dt.Xcode[315] : installApplication:withOptions:error:: 错误 Domain=IXUserPresentableErrorDomain Code=1 "这个应用程序不能 此时已安装。" UserInfo=NSLocalizedDescription=此应用 此时无法安装。,NSUnderlyingError=0x7fd558a69980 Error Domain=MIInstallerErrorDomain Code=39 "Appex 包位于 /Users/mrinmaykalita/Library/Developer/CoreSimulator/Devices/4E1C6B5B-2711-47ED-B8B6-27DA419E4609/data/Library/Caches/com.apple.mobile.installd.staging/temp.9nyJrs/extracted/Beam.app/Watch /光束 Watch.app/PlugIns/Beam Watch Extension.appex with id com.bpl.Beam.watchkitapp.watchkitextension 没有定义一个 NSExtension 字典在其 Info.plist 中" UserInfo=LegacyErrorString=AppexBundleMissingNSExtensionDict, FunctionName=-[MIPluginKitPluginBundle overlaidInfoPlistWithError:], SourceFileLine=213, NSLocalizedDescription=Appex 包在 /Users/mrinmaykalita/Library/Developer/CoreSimulator/Devices/4E1C6B5B-2711-47ED-B8B6-27DA419E4609/data/Library/Caches/com.apple.mobile.installd.staging/temp.9nyJrs/extracted/Beam.app/Watch /光束 Watch.app/PlugIns/Beam Watch Extension.appex with id com.bpl.Beam.watchkitapp.watchkitextension 没有定义一个 NSExtension 字典在其 Info.plist

CoreSimlutor.log的上述输出中;为什么在该文件夹不存在或在运行中创建时引用com.apple.mobile.installd.staging

请问有什么快速锻炼吗?

我检查了密钥是否存在于 Info.plist 中

<dict>
  <key>NSExtensionAttributes</key>
  <dict>
    <key>WKAppBundleIdentifier</key>
    <string>com.bpl.Beam.watchkitapp</string>
  </dict>
  <key>NSExtensionPointIdentifier</key>
  <string>com.apple.watchkit</string>
</dict>

谢谢

【问题讨论】:

【参考方案1】:

在更改应用程序/WatchKit 扩展或 WatchKit 应用程序的 Info.plist 文件的位置后,我遇到了这个问题。其他原因可能只是重命名了 WatchKit 应用或扩展的文件夹。

您必须清理所有目标,包括主应用程序、扩展程序和 WatchKit 应用程序。一旦在 Xcode 的下拉菜单中一个接一个地更改目标,我必须对每个目标使用 Cmd+Shift+K 执行清理。

【讨论】:

以上是关于Info.plist 中未定义的字典的主要内容,如果未能解决你的问题,请参考以下文章

Flutter - iOS 模拟器部署目标“IPHONEOS_DEPLOYMENT_TARGET”设置为 7.0 && 无法找到构建输入文件 GoogleService-Info.pl

Info.plist 字典到 Enum:String 类型的字典

Info.plist 中 CFBundleDocumentTypes 键的值必须是字典数组

从 Info.plist 读取版本

QMake:为 iOS App 指定自定义 Info.plist 文件

使用 XCODE 将 UIRequiredDeviceCapabilities 添加到 info.plist [重复]