8

I am developing an application based on iOS 6.1, and after upgrading to OSX Yosemite can not run the simulator.

I've been reading on stackoverflow, and some people say that OSX 10.10 no longer supports iOS 6, only 7 and 8.

I chose to develop on iOS 6 because of the large amount of users that still use this version.

I've seen this topic In OS X 10.10 (Yosemite Beta), How do I Test Using iOS 6.1 Simulator?

But I would like an opinion on the path to be taken.

I return to OSX 10.9 Maverick, or advance to iOS 7.1?

Thank you in advance.

Community
  • 1
  • 1
  • 2
    I'm not sure where you get your information. According to Apple, ( https://developer.apple.com/support/appstore/ ), 52% of devices are iOS8, 43% are iOS7, and only 5% are iOS6 or earlier. – Ian MacDonald Oct 29 '14 at 17:50
  • 1
    5% is a scalding world, here in Brazil this number should be higher. And the application that is developed for use with the equipment we sell. Even though it's a low percentage, it could cause a bad impact to consumers. Thank you. – Douglas Nassif Roma Junior Oct 29 '14 at 17:57
  • This will probably be closed as opinion-based, but you should drop ios6, unless you have real data to suggest that you'll cut off a lot of your active, paying users. – jrturton Oct 29 '14 at 17:59
  • @jrturton I noticed that you work a lot with Xcode, you think there's any chance of running iOS 6 in Yosemite? – Douglas Nassif Roma Junior Oct 29 '14 at 18:11
  • 2
    It runs fine on devices - you can connect an ios6 device and debug on that. The simulator will never work – jrturton Oct 29 '14 at 18:14

1 Answers1

19

iOS Simulator runtimes older than iOS 7.1 will not work on OS X Yosemite.

You can still build your apps to support older iOS versions by setting an older deployment target, but you will not be able to test them on a simulated device running on OS X Yosemite. You can test on a physical device running iOS 6.1, or you can run Xcode 5.1.1 in OS X Mavericks to test your project in the older simulator.

This is not just an arbitrary requirement. This is a limitation of the legacy runtimes not being able to run on the newer host OS versions. The main reason support for sim versions get dropped in new releases is that they just don't work on the new OS versions for one reason or another and would require either major updates to the simulated runtime itself or hacky (performance-costing) workarounds added to the host OS to support them.

Over the past 5 years or so, we've pushed the interface layer between the host and sim lower and lower, reducing it now to probably the smallest that we can accomplish with the current model.

Jeremy Huddleston Sequoia
  • 22,938
  • 5
  • 78
  • 86