0

I am looking to make my app so that it only works on iPhone4 or higher, and not the 3GS.

How can I do this? Is it done via setting the Architectures setting to Standard Armv7/Armv7s

And Valid architectures to Armv7 & Armv7s?

Or do I need to look at deployment target? And set it to a certain iOS version?

Thanks in advance!

user1695971
  • 103
  • 1
  • 5
  • 15
  • Have a look .. http://stackoverflow.com/a/3365391/1848025 – OutOfBoundsException Mar 26 '13 at 19:22
  • Why do you want to restrict it? Is there some newer hardware feature that you require? Some newer API that you require? Is it a general performance issue? In general you cannot decide arbitrarily which devices you support unless it's tied to OS or hardware distinctions. – Ben Zotto Mar 26 '13 at 19:22

2 Answers2

0

Unfortunately you can target the iOS version not the device! You can try to build for iOS 6.0+ and it'll isolate some older devices like iPad1. I'm not sure what iOS version will go up to on 3GS, it'll be phased out soon, though with upcoming iOS releases. I know iOS 6 will work on 3GS but iPad1 won't

You can detect the device, and restrict it via code, but through Apple and iTunes, there is no device centric restrictions, only OS.

apollosoftware.org
  • 12,161
  • 4
  • 48
  • 69
0

Deployment target is only going to allow you to target a specific iOS version and a 3GS can run iOS6. If you're truly looking to restrict older devices from running your app you're likely going to have to do some checks for device model within the AppDelegate and restrict functionality.

A caveat to this is that your app will likely not be permitted in the App Store. What feature(s) are you trying to leverage that a 3GS doesn't support?

Dan
  • 5,153
  • 4
  • 31
  • 42