【问题标题】:Error, no entitlements found in bundle " "错误,在捆绑包“”中找不到任何权利
【发布时间】:2013-10-06 18:42:40
【问题描述】:

请有人帮助我!

我存档了我的应用程序,我收到了这个错误:

错误 ITMS-9000 “缺少代码签名权利。在捆绑包“com....”中找不到任何权利 可执行文件。

我该如何解决这个问题? 谢谢。

【问题讨论】:

  • 检查项目构建设置中的代码签名和配置文件设置

标签: iphone ios7 archive xcode5 entitlements


【解决方案1】:

由于最近引入的自动构建脚本,我遇到了这个问题。该脚本正在手动对生成的应用程序包进行代码签名,结果我需要在代码签名步骤中明确引用权利文件:

/usr/bin/codesign --force --sign "$CERTIFICATE" --identifier "$BUNDLE_ID" --entitlements Entitlements.plist Payload/${BUNDLE_NAME}.app

Entitlements.plist 文件非常标准:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>get-task-allow</key>
    <false/>
    <key>application-identifier</key>
    <string>fully-qualified bundleid</string>
    <key>keychain-access-groups</key>
    <array>
        <string>fully-qualified bundleid</string>
    </array>
</dict>
</plist>

【讨论】:

  • 您可以从现有的应用程序包中生成一个新的权利文件,而不是创作可能有效或无效的新权利文件。就像魔术一样! usr/bin/codesign -d --entitlements :entitlements.plist Payload/*.app 注意:如果您在名称前加上冒号,您将获得一个 XML 文档。否则你会得到一个 SGML 文档。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-12
  • 2021-01-10
  • 1970-01-01
  • 1970-01-01
  • 2013-01-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多