3

嗨,我正在尝试通过“Application Loader”为 Mac Store 的 MonoMac 二进制文件进行代码签名。我可以提交应用程序,但“iTunes Connect”中的状态总是说“无效二进制”!?我必须手动执行此操作的原因是 MonoMac 签名中存在错误。但我现在开始拔头发了,因为已经过了一天半了。

我还收到一封电子邮件说:

签名无效 - 路径 Paper Tanks.app 的主应用程序包 Paper Tanks 已签名,但签名无效。

如果我尝试用这个对二进制文件进行签名,“Application Loader”将给出一个错误:

codesign -v --force --sign "A72F25F56B7D6C43332AE795288EA092009BE737" "--resource-rules=/Users/Andrew/Reign/Games/papertanks/PaperTanks_OSX/PaperTanks_OSX/bin/AppStore/Paper Tanks.app/Contents/Resources/ResourceRules.plist" --entitlements "/Users/Andrew/Reign/Games/papertanks/PaperTanks_OSX/PaperTanks_OSX/bin/AppStore/Paper Tanks.xcent" "/Users/Andrew/Reign/Games/papertanks/PaperTanks_OSX/PaperTanks_OSX/bin/AppStore/Paper Tanks.app"

Application Loader error = "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'com.apple.application-indetifier' in Paper Tanks.app/Contents/macOS/Paper Tanks'."

因此,由于上述步骤失败,因此我对应用程序进行代码签名,如下所示:

codesign -v --force --sign "第 3 方 Mac 开发者应用程序:Andrew Witte" "--resource-rules=.../AppStore/Paper Tanks.app/Contents/Resources/ResourceRules.plist" ".... /AppStore/Paper Tanks.app"

然后我对内部单声道posix库进行代码签名,因为最后一步似乎没有。

codesign -v --force --sign "第 3 方 Mac 开发者应用程序:Andrew Witte" .../AppStore/Paper\ Tanks.app/Contents/Resources/libMonoPosixHelper.dylib

然后我构建并签署 pkg:

productbuild --component ".../AppStore/Paper Tanks.app" /Applications --sign "第 3 方 Mac 开发者安装程序:Andrew Witte" ".../AppStore/PaperTanks_OSX-0.1.pkg"

4

1 回答 1

3

我升级到 Xcode 4.4 解决了这个问题

于 2012-07-27T18:26:41.560 回答