tags:

views:

45

answers:

1

I have an application that was originally written using iOS 3.1 Last week I did an update to the application via iTunes Connect but mistakenly left the "Base SDK" and "iPhone OS Deployment Target" both set to 4.1 I now plan to resubmit the application using "Base SDK: 4.1" and "iPhone OS Deployment Target:3.1"

My questions is: as its currently posted with both values set to 4.1 does that mean that the application will only run on 4.1, although I am guessing it will run on anything later than 4.1? N/B: the application is fully compatible with 3.1 (i.e. its not using any 4.0 features)

My understanding of the two options is: "Base SDK" is the newest version number of iOS whose features you want. "iPhone OS Deployment Target" is the oldest version number of iOS that you will support

+2  A: 

Your understanding is correct, it's exactly like that.

Regarding your question: of course your app will run on newer OS versions, provided they don't remove any methods/classes you use. But if your app does not make use of 4.0 features or properly asks for their existence via respondsToSelector: then I would definitely set the Deployment Target to 3.1 in order to get a bigger user base. But your Base SDK should be set to 4.1

AFAIK there's going to be a Use newest SDK option for Base SDK in the upcoming Xcode 4 so you don't have to worry about that switch any more when upgrading Xcode/iOS-SDK.

DarkDust
Thank you, I just wanted to check before I hassle Apple with another update :) much appreciated.
fuzzygoat