问题
I have an Xcode project built with Xcode 7.3.1 (7D1014) and Swift.
After an urgent bugfix I need to upload the new ipa but I'm getting the following error message:
ERROR ITMS-90725: "SDK Version Issue. This app was built with the iOS '9.3' SDK. All iOS apps submitted to the App Store must be built with the iOS '11.0' SDK or later, included in Xcode [9.0] or later. Please update Xcode and rebuild your app."
Because it's an urgent update, I haven't time to update, convert and fix all error messages.
Does anybody know a workaround?
How does Xcode know what iOS SDK I was using to build the app? Or, can I use the iOS 11.0 SDK in Xcode 7.3.1?
回答1:
I'm sorry but there are not workarounds, from July 2018 all iOS app updates submitted to the App Store must be built with the iOS 11 SDK and must support the Super Retina display of iPhone X.
You can find more informations here.
回答2:
You need to archive the project with your current Xcode version ( 7.3.1 ) then generate the ipa from Xcode 9 -> Window -> Organizer -> Select the archive -> Export
回答3:
There is a solution! I tried 2-3 days and now it works! You can use older versions of xcode with iOS 11.0 or 12.0 sdk. It's not that short please follow the steps carefully.
1-)Install xcode 9 or xcode 10 into your mac (or another mac if you have)
2-)GO >> Applications >> right click x code 9/10 and show package content. Contents >> Developer >> Platforms >> iPhoneOS Platform >> Developer >> SDKs >> iPhoneOS11 or 12 SDK. COPY SDKsettings.plist file into another folder on desktop. Please open a folder on desktop and paste into that folder. Don't paste it on desktop directly.
3-)Now for the older version GO >> Applications >> ... >> SDKs >> iPhoneOS9.2 SDK in the older xcode such as 7-8 version. Click on the SDKsettings.plist and send it into trash folder. Open another folder on desktop and move it on that folder from trash. No copy-paste here.
4-)NOW open the folder which contains newest SDK file (mentioned in the 2nd step). Copy that file and paste into the older x code >> GO >> APP >> ... SDKs >> into BOTH iphoneOS9.2sdk and iphoneOS.sdk folders. Change the folder name from iphoneOS9.2 to 11.0 or 12.0 depending the newest SDK you have. Don't change the name of iphoneOS folder.
5-)Open your older xcode and now you can see the SDK version is changed to 11 or 12 in build settings (target).
6-)Still not enough --- More to do.
7-)Open a new single view app project in the newest xcode. No need to code. You just need the newest ASSESTS.car file. COPY your assets folder from your original project (x code 7/8) to this new project (x code 9/10). Make sure that you fill all AppIcons on the assests in the newest version of xcode. In the info part please add the security things you use in your original code (such as ATC, NSLocation etc.) Also add a row and write CFBundleIconName >> AppIcon. Build and RUN the project. Open the archieve from organizer. Right click and show in finder. Then right click show package contents. Products >> Applications >> Right click and show package contents. Copy ONLY THAT files >> all.png files + Assets.car + Info.plist + PkgInfo and paste into another new folder on desktop.
8-) Now open your original code in xcode 7/8 etc. Build and RUN the code. Open the archieve from organizer. Right click and show in finder. Double click Info.plist file. Add a row and write CFBundleIconName >> AppIcon. Now turn back and Products >> Applications >> Right click and show package contents.
9-)Copy all files on the desktop folder mentioned in the 7th step. Paste the files into folder in the 8th step. Click replace.
10-)Now upload your archieve from xcode 7/8 to appstore! DONE..
来源:https://stackoverflow.com/questions/51823995/error-when-trying-to-upload-xcode-project-please-update-xcode-and-rebuild-your