I can finally report that the battery drain issue that my iPod Touch second generation had been having with iOS 4.0 & 4.1 is solved! I had previously worked around the issue by using airplane mode, but I wanted a permanent fix. Using advice found in the Apple Support Discussions forum, an article on cnet and some helpful commenting from Sean Sullivan, I was able to fix the iPod Touch iOS 4.0 & 4.1 battery drain issue.
Here is the procedure that worked for me:
- Connect your iPod Touch to a USB 2.0 port on your computer, rather than through a USB hub. I had always used a hub in the past. This time iTunes ground to a halt when using a hub and was only happy with a direct connection.
- Make a note of all of your important settings because you are going to need them later. [Update 1 Jan 2011: As Bill points out in the comments, some app data may not be able to be restored, so be sure to verify that it is possible to save and restore your app data before the attempting a factory restore of your iPod in step 3.]
- Do a factory restore of your iPod Touch. Even though iTunes saves a backup of your iPod’s data and settings, do NOT restore the backup of your data. I did multiple factory & data restores and none of them worked. Avoiding the automatic restore is painful, but it turned out to be the critical step for me. [Update 3 Feb 2011: Apple has instructions for doing a restore. Be sure to only restore the OS, not your data.]
- Load your applications and data back on to the iPod Touch. I was able to load all of my applications at once without issue.
- Make sure push notifications are turned off on all of your applications. I had turned mine off before running this procedure, but forgot to turn them off on one application after the procedure.
I only needed to do this procedure once when I upgraded the iPod Touch from iOS 4.0 to iOS 4.1. The upgrade from iOS 4.1 to 4.2 worked without issue and my iPod Touch is working as well as it did on iOS 3.1.3!