Newbie: What iPhone and iOS version should I get for development considering a wide range of backward compatibility support

I am not familiar on iOS environment and its ecosystem but I've done a couple of research and most of them are suggesting to get the latest version or device as much as possible since iOS usually stop supporting old version in a long run.

  1. How is the backward compatibility support of iOS compare to other platform specially Android?

  2. How many version or year does the platform usually consider before abandoning/deprecating older version/device?

  3. Bonus, can you suggest a good resource to learn iOS development with best practices? Documentation, YouTube channel, etc. that are up to date. Where should I start, I am skilled on Android platform already and want to dive in on iOS.

Thanks a lot

Answered by Claude31 in 706223022

Those are very different questions.

How is the backward compatibility support of iOS compare to other platform specially Android?

  • a) As a developper, it is your responsibility to provide regular update of your apps to guarantee they run perfectly on new iOS version.
  • b) As a user, apps usually continue to work with new iOS release for a long time, unless they have some bug that reveals in new version. Son point a) is critical

Purpose of this forum is not to compare iOS to Android. But you should remember there are many different variants of Androids (by manufacturer) and a much more diverse range of version on the field. It is thus simpler to keep app working correctly on iOS.

How many version or year does the platform usually consider before abandoning/deprecating older version/device?

Typically, 6 or 7 major releases at least, which means 6 to 7 years. iPhone 6s / 6s Plus were released in 2015 with iOS 9 and still accept iOS 15.

You will find precise information here: https://iosref.com/ios

Bonus, can you suggest a good resource to learn iOS development with best practices? Documentation, YouTube channel, etc. that are up to date. Where should I start, I am skilled on Android platform already and want to dive in on iOS.

Good start point is Apple's book series on Swift: everyone can code, App development with Swift…

A final advice: when learning don't force yourself to find the equivalence with other platforms, just learn iOS, Swift and the APIs…

Accepted Answer

Those are very different questions.

How is the backward compatibility support of iOS compare to other platform specially Android?

  • a) As a developper, it is your responsibility to provide regular update of your apps to guarantee they run perfectly on new iOS version.
  • b) As a user, apps usually continue to work with new iOS release for a long time, unless they have some bug that reveals in new version. Son point a) is critical

Purpose of this forum is not to compare iOS to Android. But you should remember there are many different variants of Androids (by manufacturer) and a much more diverse range of version on the field. It is thus simpler to keep app working correctly on iOS.

How many version or year does the platform usually consider before abandoning/deprecating older version/device?

Typically, 6 or 7 major releases at least, which means 6 to 7 years. iPhone 6s / 6s Plus were released in 2015 with iOS 9 and still accept iOS 15.

You will find precise information here: https://iosref.com/ios

Bonus, can you suggest a good resource to learn iOS development with best practices? Documentation, YouTube channel, etc. that are up to date. Where should I start, I am skilled on Android platform already and want to dive in on iOS.

Good start point is Apple's book series on Swift: everyone can code, App development with Swift…

A final advice: when learning don't force yourself to find the equivalence with other platforms, just learn iOS, Swift and the APIs…

The Wikipedia "list of iOS and iPadOS devices" page has a good table showing when each device was introduced, what the newest iOS version it can run is, and when it stopped getting updates.

Personally I prefer to develop using relatively old devices. My rationale is that if my app runs fast enough on an old device, then it will certainly run fast enough on a new device. You can also acquire used iPhones with cosmetic damage for good prices.

Collecting screenshots / videos for the App Store is something to think about. Generally, the App Store will allow you to submit screenshots from larger-screen devices and it will scale them down - but not the other way around. This isn't a huge problem if your app runs OK on the simulator as you can submit screenshots from that, but if you app doesn't run on the simulator for some reason, then that may force you to buy particular (expensive) devices. (Note one alternative to the simulator is the AWS Device Farm.)

Regarding "how to learn", I don't have any particular up-to-date recommendations but you might like to mention what sort of apps you are developing and which languages/technologies you are currently using on Android, and whether you hope to port those apps or create entirely new things. There are almost as many approaches as there are developers...

Newbie: What iPhone and iOS version should I get for development considering a wide range of backward compatibility support
 
 
Q