工具链无效。新 App 和 App 更新必须使用公共(正式)版 Xcode 6 或更高版本以及 iOS 8 SDK 或更高版本来构建。请勿提交 Beta 版软件构建的 App。

时间:2021-07-19 08:50:56

今天提交一个App 到 iTunes Connect。App在Xcode 7以及Mac OS X EL Capitan 10.11.1 beta下编译

出现一个错误消息如下

Invalid Toolchain. New apps and app updates must be built with the public (GM) versions of Xcode 6 or later, 
and iOS 8 SDK or later. Don‘t submit apps built with beta software.


中文版错误消息:

工具链无效。新 App 和 App 更新必须使用公共(正式)版 Xcode 6 或更高版本以及 iOS 8 SDK 或更高版本来构建。
请勿提交 Beta 版软件构建的 App。


应用程序的建立由兼容的Xcode版本、合适的iOS SDK版本以及Mac OS 版本有关。

<key>ProductBuildVersion</key>
<string>15A279b</string>

正是这个版本号的原因, iTunes Connect会读取这个值,从而知道app是使用OS X预发布版本的建立的,从而拒绝。

将app提交到iTunes Connect时会提示失败,此app不能安装任何设备上,越狱设备除外。

我们可以重装OS X来修复这个问题,这个成本太大。幸运的是,找到一个方法,可以不必降到OS X 10.10 Yosemite,

通过改变OS 版本号来解决。

提示:该解决方案要求您禁用系统完整性保护,以对系统文件进行修改

1、使用编辑器打开 /System/Library/CoreServices/SystemVersion.plist 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ProductBuildVersion</key>
<string>15A279b</string>
<key>ProductCopyright</key>
<string>1983-2015 Apple Inc.</string>
<key>ProductName</key>
<string>Mac OS X</string>
<key>ProductUserVisibleVersion</key>
<string>10.11</string>
<key>ProductVersion</key>
<string>10.11</string>
</dict>
</plist>
2、编辑 ProductBuildVersion值,从旧的OS X版本号15A279b替换为14C109版本(Yosemite 10.10.2)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ProductBuildVersion</key>
<string>14C109</string>
<key>ProductCopyright</key>
<string>1983-2015 Apple Inc.</string>
<key>ProductName</key>
<string>Mac OS X</string>
<key>ProductUserVisibleVersion</key>
<string>10.11</string>
<key>ProductVersion</key>
<string>10.11</string>
</dict>
</plist>

3、重启Xcode,重新archive您的app并正常的提交到您的App Store,这次应该能通过 iTunes Connect的审查

参考资料:https://georgegarside.com/blog/ios/submit-apps-built-beta-xcode/

               https://georgegarside.com/blog/osx/package-incompatible-installer/