Xcode 4.4.1代码签名问题

时间:2012-09-01 10:19:52

标签: xcode macos xcode4.4 code-signing-entitlements

我有这个代码签名问题,最近才出现在我尝试使用Xcode 4.4.1提交我的Mac应用程序(不是 iOS)时

当我尝试验证我的应用程序的存档时,验证失败并出现以下两个错误:

  

无效的代码签名权利。您的应用包标签中的权利与配置文件中包含的权利不匹配。根据配置文件,bundle包含一个不允许的键值:'com。(mycompany)。(myapp)'代表'MyAppBundle.app/Contents/MacOS/中的'com.apple.application-identifier'键MyAppExecutable'

     

无效的代码签名权利。您的应用程序的捆绑包签名包含Mac OS X不支持的代码签名权利。具体而言,值'com。(mycompany)。(myapp)'用于'MyAppBundle.app/Contents/中的密钥'com.apple.application-identifier'不支持MacOS / MyAppExecutable'。该值应该是以TEAMID开头的字符串,后跟一个点'。'然后是包标识符。

     

此捆绑包无效。 Apple目前不接受使用此版本操作系统构建的应用程序。

我尝试过以下但没有一个有效:

  • 重新下载并重新生成代码签名证书。
  • 在代码签名参数中指定我的团队ID:     -i“(TEAMID).com。(mycompany)。(myapp)” - entitlements“(MyAppEntitlementFile).entitlements”

Actual Xcode screenshot

有人可以帮忙吗?提前谢谢。

1 个答案:

答案 0 :(得分:2)

我已经通过使用Xcode的属性列表编辑器(目标的Summary选项卡中的看似奇特的GUI)编辑我的权利文件来修复此问题,并删除名为{{1的密钥及其价值。

我不确定这个键值对是如何到达那里的,因为我非常有信心我自己没有把它放在那里。这个项目最初是为没有沙盒的Snow Leopard编写的,并经历了许多Xcode版本。也许Xcode的旧版本把它放在那里,它与新版本冲突。