Mac App Store 已损坏错误消息
我有一个应用程序要提交到 Mac App Store。它的代码签名没有任何问题,按预期生成 .pkg 文件...
codesign -s "$app_cert" -f "$app_name.app"
codesign -d -vvvv "$app_name.app"
productbuild --component "$app_name.app" /Applications --sign "$installer_cert" "$app_name.pkg"
...一切似乎都工作正常,没有错误,一切都检查正常。然后我使用以下命令测试安装应用程序......
sudo installer -store -pkg MyApp.pkg -target /
一切似乎都很顺利。然后,我双击“应用程序”文件夹中的应用程序,它会要求我输入我的 iTunes 帐户信息。我使用在 iTunes Connect 中设置的测试用户帐户,然后收到此错误:
"MyApp" is damaged and can’t be opened. Delete "MyApp" and download it again from the App Store.
真正奇怪的是,这是 MyApp 的更新。我第一次提交,一切正常。直到现在我才看到这个问题,但我不知道出了什么问题。控制台日志中没有错误。
我已经进行了三次检查,整个驱动器上没有其他 MyApp.app,因为已知这会导致问题。
有人知道发生了什么事吗?我已经辞职并将这个应用程序打包了 10 次,没有任何改变。我尝试从几台不同的机器安装,同样的错误。自首次提交工作发现以来,我的构建环境没有发生任何重大变化。
I have an App that I'm submitting to the Mac App Store. It code signs without any problems, producing a .pkg file as expected...
codesign -s "$app_cert" -f "$app_name.app"
codesign -d -vvvv "$app_name.app"
productbuild --component "$app_name.app" /Applications --sign "$installer_cert" "$app_name.pkg"
...and everything seems to work fine, no errors, everything checks out OK. I then test install the App using the following...
sudo installer -store -pkg MyApp.pkg -target /
...everthing seems to go OK. I then double-click on the App in my Applications folder and it asks me to enter my itunes account info. I use the test user account that I set up in iTunes Connect and then I get this error:
"MyApp" is damaged and can’t be opened. Delete "MyApp" and download it again from the App Store.
What is really odd is that this is an update to MyApp. The first time I submitted, everything worked fine. It's only now that I'm seeing this problem, but I can't figure out what is wrong. There are no errors in the Console logs.
I've triple checked and there is no other MyApp.app on my entire drive as this is known to cause issues.
Anyone know what is going on? I've resign and packaged this App 10 times with no change. I've tried installing from several different machines, same error. Nothing significantly has changed in my build environment since the initial submission that work find.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我也有同样的问题。
问题是我们的应用程序版本号位于两个位置 - 在 XCode 项目中,并且还硬连线在收据验证代码中;当我们更新收据验证版本以匹配 XCode 项目时,它起作用了。
I had the same problem.
The problem was that we had the app version number in two places - in the XCode project, and also hardwired in the receipt validation code; when we updated the receipt validation version to match the XCode project it worked.
即使您的收据验证代码正确,也可能会出现错误消息,这显然是因为缓存问题可能导致下载的测试收据的版本号不正确。
在这种情况下,请重新启动计算机以清除缓存问题,然后运行全新构建(或从应用程序包中删除测试收据)以获取新的测试收据。请参阅开发者论坛上的此帖子以获取更多评论。
The error message can appear even if your receipt validation code is correct, apparently because a caching issue can cause the test receipt to be downloaded with an incorrect version number.
In that case, restart the computer to clear up the caching issue, and run a clean build (or delete the test receipt from the app bundle) to obtain a new test receipt. See this post on the developer forums for additional comment.