首页 > 其他 > 详细

Package is incompatible with this version of OS X

时间:2015-11-28 10:25:55      阅读:581      评论:0      收藏:0      [点我收藏+]

 

George Garside‘s Blog

If you find something useful on here, it‘s probably an accident.

技术分享

 

If you try to submit an app to iTunes Connect which has built with the Mac App Store‘s Xcode 6.4, which is currenly not in beta, using the iOS 8 SDK, also not in beta, you can add the build but you can‘t submit the app for review. The following error message is shown:

Apps and app updates submitted to the App Store must be built with Xcode 6.4 or later, and iOS 8 SDK.

Now that the GM build is out, there‘s a new error message:

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.

This is because even though the app has been built with the compatible version of Xcode and the correct iOS SDK, the app contains the build version of the OS that built the app.

<key>BuildMachineOSBuild</key>
<string>15A204h</string>

It is this build nubmer that causes the problem. iTunes Connect reads this value and determines that the app was built using a pre-release version of OS X, thus rejecting the build. Unfortunately, you can‘t simply modify the plist because this invalidates the codesigning—you‘ll be allowed to submit the app to iTunes Connect but it will fail review because the app can‘t be installed on any device (except jailbroken devices with AppSync).

Fortunately, there is a solution without having to downgrade to OS X 10.10 Yosemite: change the build number of the OS, temporarily.

Note: This solution requires you to disable System Integrity Protection to make changes to system files.
  1. Open /System/Library/CoreServices/SystemVersion.plist with your favourite editor.

    For this example, I will open it with TextMate.

    mate /System/Library/CoreServices/SystemVersion.plist
    技术分享
  2. Edit line 6 to change the ProductBuildVersion to one that is for an older version of OS X. Replace 15A263e or your respective build version with an older build version such as 14C109 (Yosemite 10.10.2) which is not a pre-release build.

    <?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. Relaunch Xcode, re-archive your app and submit it to the App Store as normal. The build should be accepted by iTunes Connect for review!

Package is incompatible with this version of OS X

原文:http://www.cnblogs.com/feijietongti/p/5002163.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!