What's the meaning of Base SDK, iOS deployment target, Target, and Project in xcode

user4951 picture user4951 · Sep 2, 2013 · Viewed 71.3k times · Source

Say I set base SDK to 7, what does it mean? It could mean that the app would run on iOS 7. But that's what iOS deployment target is for.

Also why do I specify those 3 values in both project and target. It doesn't make sense. Why specify the same thing twice?

Answer

onmyway133 picture onmyway133 · Mar 20, 2014

In the iOS 7 TechTalk, session Architecting Modern Apps, Part 2, they explain this clearly

enter image description here

Good read Hi! I'm #available!

So, a modern App might use iOS 9 as the Target SDK, and iOS 7 as the deployment target. This means that you can run on iOS 7, iOS 8 and iOS 9, and that you have available to you any iOS 9 calls when actually running on iOS 9.

You can read more in my post SDK and Deployment Target