xCode install older iOS SDK - ios

I've recently updated xCode to the newest version. (which includes iOS SDK 6.1) The problem is, that i want to make my apps available for all iOS versions, starting at version 5.0. Is this even possible?
Best regards

Go to Xcode->Preferences->Downloads->install Simulators to test all iOS versions.
For setting your application minimum iOS version, goto Targets->Summary->Deployment Target->Set to 5.0
Hope this helps you..

Related

When do we need to upgrade to new version Xcode (.i.e Xcode 11)?

When do we need to upgrade XCode to newer version? Is it ok if we use older version (.i.e build IPA for iOS 13.1 with XCode 10 or even XCode 9)
(to debug with newer iPhone, iPad is one reason :D)
While you can develop/build/release your app to be compatible with iOS 13 on older Xcode, you cannot add new features that are present in XCode 11 such as dark mode, Sign in with Apple, new simulators (yes, there is a way to add iOS 13 simulators into older XCode but I wouldn't recommend doing it), new code signing, Swift UI and many more.
Also - Sign in with Apple is going to be required for a lot of apps soon so that's a huge push into the new XCode.
You will be able to work with older iOS versions, but at some point you won't be able to run an application for the latest iOS releases (for example iOS13) and also you won't be able to use SwiftUI framework for developing.
Of course you won't have access to new features of Xcode.
If you developing on older version of Xcode then you can not use dark/light mode feature on your app, also in future it's compulsory to build/upload app using latest Xcode version for latest iOS support.

Latest iOS device support folder

I'm using Xcode 7.3.1, which supports up to iOS 9.3.1.
Now I'd like to check my app on a device on a relatively current version of iOS (10.x), so I added some OS Support folders (using Xcode 7.3.1 with iOS 10 support
), which seems to have worked well.
Now I need the latest OS support folder (i.e. 10.2.1(14D7)). I have checked other StackOverflow answers, but I haven't found one that helps.
Just use Xcode 8. It supports iOS 9 and the latest iOS 10. If you need to keep Xcode 7 in order to run on older iOS versions you can just rename your Xcode to Xcode7 and install Xcode 8 next to it. You can run both of them but it would be wise to do it not at the same time.
Is there any reason that you need to stick to Xcode 7? If you want to support older iOS versions you can download different simulator in Xcode 8. And also, you need to build in latest Xcode to support latest iOS. Xcode 7 doesn't have iOS 10 SDK.
As #MacMark said, you can keep both Xcode 7 and 8 in your mac but I don't see any benefit for doing so.

Swift Code in XCode 7.3.1 not working in iOS 10

I am building an iOS app using Swift 2.2, XCode 7.3.1, which is going to go live very soon. I upgraded my iPhone to iOS 10.0 and now when I try to run my code in my iPhone, I am getting the error -
At this stage of my project I don't want to upgrade to XCode 8.0 and use Swift 3.0. Is there any way I can make my code written in XCode 7.3.1 work in iOS 10. My code is working well for iPhones having iOS versions 9.3.2
Thanks
No, Xcode 7.3.1 does not support iOS 10. You cannot. You will have to upgrade to Xcode 8.
And, you should upgrade because it also provides you Swift 2.3 which will help you run latest SDK for iOS 10 etc and the transformation is automatic.
Read here: https://developer.apple.com/swift/blog/
To detect device in XCode you must install software with appropriate version or system will show you the message you have mentioned in the question.
A workaround as per your wish is that every time you make an IPA of your release and install it in the device you want to run with it (that could be a hard time if you deploy several times a day). Remember there is an upward compatibility but no downward compatibility that is if your deployment target is 8 or above you can run the IPA on device having iOS 8 or above but not in iOS 7.
Perhaps you may get some issues on running it on new iOS because of the some obsolete or new features, and to fix that you must upgrade XCode and compile your code on it.
Hope that helps!
Copy the folder 10.0 (14A345) in DeviceSupport folder of Xcode8 to
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
It works for me :)

Backward compatibility for iOS build SDKs

I would like to run old application which has a support of iOS 5.0 and less. It has a deployment target 5.0. The thing is that:
I have upgraded system to Yosemite OS 10.10 and lowest Xcode version I have 5.0. Now when I look on base SDK and I see below picture.
As you see the least build SDK shown s iOS 7.0. No other lower version is there.
I heard or I read some where that you can also use lower version SDK here. By copying SDKs to some where or any other means. I would like to know a better approach here.
Edit:
I have a requirement of one application which was developed in Xcode 4.6 for iOS 5.0. So that just to check that application flow I need to download Xcode 4.6. Is it so? Can we don't include older SDKs in newer version of Xcode?
You should not attempt to build your application with an old version of Xcode. The only version of Xcode supported on Yosemite is Xcode 6.1, which only ships with the iOS 8 SDK. You should build for the latest SDK, and set the Deployment Target to iOS 5 if you want your code to run there (by degrading gracefully using NSClassFromString and respondsToSelector: checks)

iOS SDK 4.0 for Xcode 4.1 (Lion)?

I recently downloaded Xcode 4.1 for Lion with iOS SDK 4.3. Now, whenever I change my Deployment Target to anything older than 4.3, I get hundreds of errors when I try to build my project. This happens even if I'm trying to run it on the 4.3 iOS Simulator, so I don't even need to be actually running it on an older device, I just have to set the older Deployment Target.
Do I need to download a separate SDK in order to allow for older devices? If so, where could I find it?
Thanks for your help!
I tried copying the SDKs from Xcode 4, but it doesn't work.
Other answers suggest that it's not possible.
I'm now using a virtual machine with Snow Leopard to test on older devices. (Or real older devices, if you have one)

Resources