I decided to upgrade one of my iPhone 3G’s to iOS 4 and leave the other one on iPhone SDK 3.1.3 after purchasing two new iPhone 4’s. Realizing that the upgrade did not have much to offer, the fate of the iOS 4 iPhone 3G was to be utilized as more of an iPod touch for my six-year-old daughter.
I followed some of my own advice and started turning off many features that I felt my daughter wouldn’t use like Notifications, Sounds, Vibrations, Bluetooth, Location Services, 3G Data, Cellular Data, Data Roaming, iPod Controls. I even placed the iPhone in Airplane Mode and turned off Spotlight Search. I did turn restrictions on, if for no other reason than just to disable iTunes, Installing Apps, and especially In-App Purchases. I loaded up the iPhone with no less than 100 Apps (almost all were games), her favorite television episodes, movies, music, and family photos. Wi-Fi was enabled around the house and she’s been using e-mail as well as Skype to communicate to family and friends.
What I didn’t realize was that I was unknowingly configuring the iPhone 3G for the best possible performance running iOS 4. The battery life has been phenomenal since the update with the feature configuration I used for her, almost on par with our family iPad (which is also a Wi-Fi only device). Several blogs have reported that simply turning off Spotlight Search (Settings > General > Home Button > Spotlight Search) is all it takes to get back some of the performance lost when upgrading from iPhone SDK 3.1.3 to iOS 4.0. While I haven’t determined if this configuration change alone does the trick, I can say that I have not seen the same severe degradation in performance the others have reported. Keep in mind that I turned off way more than just the Spotlight Search, and have no reason to turn those other services back on in the near future.
Now that users seem to have accepted the iPhone 4 issues, attention is shifting to the older iPhone 3G and its issues when upgrading to iOS 4. It is unknown if the just-released iOS 4.1 beta 2 will address any of these performance issues, or if it’s just wishful thinking. I for one will be keeping my second iPhone 3G on iPhone SDK 3.1.3 for a little while longer.