我正在使用
Xcode 4.1和MacOSX Lion 10.7.我正在尝试存档我的Mac应用程序,以便我可以将我的应用程序上传到iTunes连接,但它给了我这个错误:
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
错误:错误读取属性列表’/Developer/Platforms/MacOSX.platform/Entitlements.plist’ – 属性列表没有对象
命令builtin-productPackagingUtility失败,退出代码为1
如果我不签署代码,则不会发生此错误.在升级到Xcode 4.1之前,我能够正确提交我的应用程序.我似乎无法找到有关如何在xcode 4中签署应用程序的任何文档,我不知道新的启用权利和沙箱的作用.
当我以某种方式让它工作,我收到来自iTunes的这封电子邮件连接时出现以下错误:
无效的代码签名权利 – 应用包签名中的权利与配置文件中包含的权利不匹配:
根据配置文件,bundle包含一个不允许的键值:appname.app/Contents/MacOS/appname中键“com.apple.application-identifier”的“appname”
要将我的应用程序正确提交到iTunes连接,我需要做什么?
最佳答案 事实证明,如果您使用的是2010年6月之后制造的新Macbook,则打包应用程序会出现问题.要打包您的应用,请按以下步骤操作:
1)构建和存档
2)打开管理器 – 存档,找到新存档.
3)右键单击存档“在Finder中显示”
4)右键单击查找器中的存档为“显示包内容”
5)深入到您的应用程序(> Products / Applications / YourApp)
6)右键单击您的应用,“显示包内容”
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)提交……耶!