Info.plist表示Mac应用程序,但提交IPA

时间:2017-05-10 20:54:19

标签: xcode macos mac-app-store application-loader

我正在尝试提交macOS应用,但每当我尝试将包上传到App Store时,我都会收到错误消息。我尝试过使用Xcode(8.3.1(8E1000a))和捆绑的Application Loader版本。两者都产生相同的状态。

如果有人知道可能的解决方法 - 我只需要提交此Mac应用程序。谢谢。

2 个答案:

答案 0 :(得分:-1)

我和那个虫子打了很多。

Xcode 9.2我下载了Xcode创建的.pkg(导出“App Store”)。然后我尝试使用Application Loader v3.0提交它并得到了奇怪的错误消息:ERROR ITMS-90268:“应用程序包的Info.plist文件中的'Bundle OS Type Code'[CFBundlePackageType]必须是'APPL'。”在从.pkg分析捆绑包的Info.plist文件时,我发现Xcode将CFBundlePackageType字符串从APPL(在Xcode项目中指定)更改为BNDL。请注意,如果我使用导出“开发者ID”,则字符串是“APPL”,如预期的那样。对我来说,这显然是Xcode中的一个BUG。

我通过以下方式解决了这个问题:1-手动更正Info.plist文件2-使用codesign命令手动重新签名捆绑包3-使用productbuild命令手动重新创建.pkg 4-手动签署.pkg文件productsign commnand 5-使用Application Loader

提交更正后的.pkg文件

当然Xcode阶段不是必需的,但我想了解这个问题。手动程序就足够了:codesign + productbuild + productsign + Application Loader

答案 1 :(得分:-1)

使用Application Loader 3.0为我工作。

https://itunesconnect.apple.com/apploader/ApplicationLoader_3.0.dmg

或者您可以尝试将此代码添加到info.plist中。从Unity网站:

如果您使用的是Xcode 8.0+,则还需要将以下字段添加到info.plist文件中:

CFBundleSupportedPlatforms

<array>

    <string>MacOSX</string>

</array>

使用更高版本的Application Loader启用此功能