Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iPhone 2.2.1 to 3.0 Transition Best Practices

Apple is now requiring app developers to submit apps that target 2.2.1 but also build for 3.0. I (and I imagine a large majority of small/part-time developers) only have one iPhone and since the upgrade to 3.0 is irreversible, I wanted to get some thoughts out there as to what are some best practices for minimizing risk during the transition.

I understand there is no foolproof way of doing full regression testing on both OSes, but any thoughts on how one might minimize regressions would be helpful.

Here's Apple's exact text:

Millions of iPhone and iPod touch customers will move to iPhone OS 3.0 this summer. Beginning today, all submissions to the App Store will be reviewed on the latest beta of iPhone OS 3.0. If your app submission is not compatible with iPhone OS 3.0, it will not be approved.

Existing apps in the App Store should already run on iPhone OS 3.0 without modification, but you should test your existing apps with iPhone OS 3.0 to ensure there are no compatibility issues. After iPhone OS 3.0 becomes available to customers, any app that is incompatible with iPhone OS 3.0 may be removed from the App Store.

like image 227
Martin Gordon Avatar asked Nov 15 '22 16:11

Martin Gordon


1 Answers

You really can't test on a device against both 2.21 and 3.0 unless you have two devices. If that's really important, you can think about an iPod Touch (assuming your app doesn't require an iPhone).

As far as the simulator, once you install the 3.0 sdk you won't be able to build targeting 2.2.1 any longer. The old 2.2.1 build target gets replaced by a 3.0 target. To support both, you should think about building a virtual machine that retains the 2.2.1 sdk.

However, I agree with Alex... not much need to think about supporting both platforms. 3.0 is solid, and it's clear from today's Apple mail that it's now the major focus, as far as testing & compatibility.

Edit 5/17/09: One thing I learned after this post is that on the Mac, you can't virtualize the Leopard client OS. Apple only allows you to run the server version of OS X in a virtual machine. IMHO, this really limits software developers as a group, among others, and I hope this is changed eventually.

like image 140
ChrisW Avatar answered Dec 14 '22 23:12

ChrisW