1

We have an agreement with our customers to support current version plus one back. I cannot drop iOS 6 until iOS 8 is released.

Is it possible to use iOS 7 enhancements and still support 6. I would love to deploy two version of the app or have runtime conditionals, however, I do not see how it is possible.

Jamey McElveen
  • 18,135
  • 25
  • 89
  • 129
  • See this similar one: http://stackoverflow.com/questions/12259926/updating-apps-to-ios6 – Marcus Adams Aug 19 '13 at 16:50
  • 1
    Supporting iOS 6 and 7 is no different than supporting iOS 5 and 6 now. Actually, an app with a Base SDK of iOS 7 can support all the way back to 4.3. It would be silly, but you can do it. – rmaddy Aug 19 '13 at 16:59
  • 2
    Much of what's discussed in ["How can I support both iOS 4.X SDK and iOS 5 SDK in my iPhone app?"](http://stackoverflow.com/questions/8139698/how-can-i-support-both-ios-4-x-sdk-and-ios-5-sdk-in-my-iphone-app) and ["Supporting iOS 4.3 to iOS 6.0"](http://stackoverflow.com/questions/12776932/supporting-ios-4-3-to-ios-6-0) still applies for going backwards from 7.0 to older OS versions. – Brad Larson Aug 19 '13 at 17:50
  • If you are finding not only runtime conditional but also convinient way to suggest OS compatibility, check https://github.com/youknowone/UI7Kit – youknowone Sep 23 '13 at 07:57

2 Answers2

5

Apple's Transition Guide for moving to iOS 7 is here.

Take special note of the section on maintaining iOS 6 compatibility.

Eric
  • 2,077
  • 17
  • 16
2

You definitely could. What do you mean about not knowing if it's possible? You have to wrap a bunch of your code in if() statements or preprocessor macros to determine API availability, and maybe include corresponding XIBs for each version if necessary.

People have been supporting previous iOS versions for a long time.

Also just want to add, that MOST devices that support iOS6 also support iOS7. There is minimal reason to not add support for iOS7 for fear of losing iOS6 customers. Almost all iOS5 capable devices can run iOS6 as well. The iPad1 is stuck on iOS5, I know. A commenter stated that the 3GS and the 4th Gen iPod don't get iOS7.

So really, it's not a big deal to drop support for iOS6 when 7 comes out, if you were only targeting 6 anyway. You'll piss off some jailbreakers and the other people will just have to use OTA updates to be on 7.

Daddy
  • 9,045
  • 7
  • 69
  • 98
  • The iPhone 3GS and the 4th gen iPod touch was supported by iOS 6. They have been dropped in iOS 7. – BergQuester Aug 19 '13 at 16:45
  • @JustinAmberson You can't use preprocessor macros because those are evaluated at compile time. All checks need to be runtime checks. – rmaddy Aug 19 '13 at 21:56