Xcode 4.1 - 归档应用程序给我 Entitlments.plist 错误

发布于 2024-11-30 17:18:49 字数 1076 浏览 0 评论 0原文

我正在使用 Xcode 4.1 和 MacOSX Lion 10.7。我正在尝试存档我的 Mac 应用程序,以便可以将我的应用程序上传到 iTunes 连接,但它给了我以下错误:

ProcessProductPackaging /Developer/Platforms/MacOSX.platform/Entitlements.plist /Users/username/Library/Developer/Xcode/DerivedData/应用程序名称/构建/中间体/应用程序名称.build/调试/应用程序名称.build/应用程序名称.xcent cd "/Volumes/Apps/iOS/Mac 应用商店/应用程序名称" builtin-productPackagingUtility /Developer/Platforms/MacOSX.platform/Entitlements.plist -entitlements -format xml -o /Users/用户名/Library/Developer/Xcode/DerivedData/appname/Build/Intermediates/appname.build/Debug/appname.build /appname.xcent

错误:读取属性列表“/Developer/Platforms/MacOSX.platform/Entitlements.plist”时出错- 属性列表没有对象 命令builtin-productPackagingUtility 失败,退出代码为1

如果我不签署代码,则不会发生此错误。在升级到 Xcode 4.1 之前,我能够正确提交我的应用程序。我似乎找不到任何有关如何在 xcode 4 中签署应用程序的文档,并且我不知道新的启用权利和沙箱的作用。

当我以某种方式让它工作时,我从 iTunes 连接收到这封电子邮件,并出现以下错误: 代码签名权利无效 - 应用程序包签名中的权利与配置文件中包含的权利不匹配:

根据配置配置文件,该捆绑包包含不允许的键值:“appname”对应键“com” .apple.application-identifier” in appname.app/Contents/MacOS/appname

我需要做什么才能正确地将我的应用程序提交到 iTunes connect?

I am using Xcode 4.1 and MacOSX Lion 10.7. I am trying to archive my Mac app so I can upload my app to iTunes connect but it gives me this error:

ProcessProductPackaging /Developer/Platforms/MacOSX.platform/Entitlements.plist /Users/username/Library/Developer/Xcode/DerivedData/appname/Build/Intermediates/appname.build/Debug/appname.build/appname.xcent
cd "/Volumes/Apps/iOS/Mac app store/appname"
builtin-productPackagingUtility /Developer/Platforms/MacOSX.platform/Entitlements.plist -entitlements -format xml -o /Users/username/Library/Developer/Xcode/DerivedData/appname/Build/Intermediates/appname.build/Debug/appname.build/appname.xcent

error: error reading property list '/Developer/Platforms/MacOSX.platform/Entitlements.plist' - property list has no object
Command builtin-productPackagingUtility failed with exit code 1

This error does not occur if I don't sign the code. I was able to submit my apps properly before upgrading to Xcode 4.1. I can't seem to find any documentation on how to sign an app in xcode 4 and I have no idea what the new Enable entitlements and sandbox does.

When I somehow get it to work, I get this email from iTunes connect with the following error:
Invalid Code Signing Entitlements - The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile:

According to the provisioning profile, the bundle contains a key value that is not allowed: "appname" for the key "com.apple.application-identifier" in appname.app/Contents/MacOS/appname

What do I need to do to properly submit my app to iTunes connect?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

︶葆Ⅱㄣ 2024-12-07 17:18:49

事实证明,如果您使用的是 2010 年 6 月之后制造的新 Macbook,则打包应用程序会出现问题。要打包您的应用程序,请按照以下步骤操作:

1) 构建和存档

2) 打开管理器 - 存档,找到新存档。

3) 右键单击​​存档“在 Finder 中显示”

4) 右键单击​​ Finder 中的存档以“显示包内容”

5) 深入查看您的应用程序 (>Products/Applications/YourApp)

6) 右键单击​​您的应用 程序app,“显示包内容”

7) 删除​​_CodeSignature目录

8) 编辑Info.plist

 a) Change BuildMachineOSBuild to "11A511"

 b) Save, close

9) 返回到Finder中的Products/Applications/YourApp目录

10) 打开Keychain Access.app

 a) Find your certificate "3rd Party Mac Developer Application: Your Name"

 b) double click to inspect it

 c) Copy the full Common Name "3rd Party Mac Developer Application: Your Name"

11) 打开终端并输入以下内容:

 codesign -s "<paste your cert common name here>" -fv <drag the archived app from the finder to the terminal window here>

12) 验证输出:

 "...path to app...: replacing invalid existing signature"

 "...path to app...: signed bundle with Mach-O universal (i386 x86_64)"

13) 关闭所有窗口。

14) 在 XCode 中打开管理器 - 档案

15) 验证...是的。

16) 提交...耶!

Turns out, there is an issue with packaging apps if you are using a new Macbook manufactured after June of 2010. To package your app, follow these steps:

1) Build and Archive

2) Open the Organizer - Archives, find the new archive.

3) Right-click the archive "Show in Finder"

4) Right-click the archive in the finder to "Show Package Contents"

5) drill down to your app (>Products/Applications/YourApp)

6) Right-click your app, "Show Package Contents"

7) Delete the _CodeSignature directory

8) Edit Info.plist

 a) Change BuildMachineOSBuild to "11A511"

 b) Save, close

9) Go back to the Products/Applications/YourApp directory in the finder

10) Open Keychain Access.app

 a) Find your certificate "3rd Party Mac Developer Application: Your Name"

 b) double click to inspect it

 c) Copy the full Common Name "3rd Party Mac Developer Application: Your Name"

11) Open a terminal and enter the following:

 codesign -s "<paste your cert common name here>" -fv <drag the archived app from the finder to the terminal window here>

12) verify the output:

 "...path to app...: replacing invalid existing signature"

 "...path to app...: signed bundle with Mach-O universal (i386 x86_64)"

13) Close all them windows.

14) Open the Organizer - Archives in XCode

15) Validate... yep.

16) Submit... yay!

北方的巷 2024-12-07 17:18:49

这个方法其实对我也有效!

这是我的错误,iTunes Connect 一直将其踢出,而不是拒绝......只是几乎立即踢出。
所以无论如何......这个方法对我有用!现在应用程序正在审核中。正如他所说,耶!


无效的代码签名权利 - 您的应用程序包的签名包含 Mac OS X 不支持的代码签名权利;
如果您的 Mac OS X 项目是从 iOS 移植的,则可能会发生这种情况。
请检查您的 Xcode 项目的代码签名权利配置,并删除任何不需要的权利。

具体来说,不支持 [YourAppName] 中的密钥“keychain-access-groups”。
无效的代码签名权利 - 您的应用程序包的签名包含 Mac OS X 不支持的代码签名权利;
如果您的 Mac OS X 项目是从 iOS 移植的,则可能会发生这种情况。
请检查您的 Xcode 项目的代码签名权利配置,并删除任何不需要的权利。
具体来说,不支持 [YourAppName] 中的键“application-identifier”。


只是想补充一点...我还有一台黑色 MacBook,是 2010 年之前制造的...我仍然按照说明将“BuildMachineOSBuild”密钥添加到“11A511”。:)

This method actually worked for me too!

This was my error, iTunes Connect kept kicking it out, not rejecting...just almost instant kick-out.
So anyway...this method worked for me! now app is sitting In Review. As he said Yay!


Invalid Code Signing Entitlements - Your application bundle's signature contains code signing entitlements that are not supported on Mac OS X;
this may happen if your Mac OS X project was ported from iOS.
Please check your Xcode project's code signing entitlements configuration, and remove any unneeded entitlements.

Specifically, key "keychain-access-groups" in [YourAppName] is not supported.
Invalid Code Signing Entitlements - Your application bundle's signature contains code signing entitlements that are not supported on Mac OS X;
this may happen if your Mac OS X project was ported from iOS.
Please check your Xcode project's code signing entitlements configuration, and remove any unneeded entitlements.
Specifically, key "application-identifier" in [YourAppName] is not supported.


Just want to add in there...that I also had a black MacBook, that was manufactured BEFORE 2010...I still went ahead and added the key "BuildMachineOSBuild to "11A511" like the instructions said. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文