Some users have reported poor battery life from iPhones, iPads or iPod touches after the update to iOS 4.2.1. There are a number of potential fixes for this issue:
Restore, but not from a backup (use as a last resort). This fix has proven successful for the most users thus far. It appears that bad holdover data from iPhone backups can cause excessive battery use. Restoring as a new phone will delete contacts and other data, but may resolve this problem. To do so, connect your iPhone or iPod touch to your computer, click “Restore” in iTunes, then choose “setup as new phone.” You can then re-sync your media and other data.
Check Internet tethering. Some reports indicate that the iPhone may be persistently attempting to establish a tethering connection, thereby draining the battery. Navigate to Settings > General > Network and tap Internet Tethering, then tap “cancel” if you it is trying to connect, or turn off tethering altogether. You may need to turn Wi-Fi off then back on to stop the tethering connection attempts.
Bad apps to blame? Anecdotal evidence suggests that apps incompatible with iOS 4.2.1 or otherwise problematic under the new release can cause battery drain issues. Backup your iPhone or iPad in iTunes, then delete apps from the device in groups (you can always sync them back from iTunes later). After each group, restart your device and check for the battery drain problem. Via this method, you can isolate the problematic app and remove it permanently.
Also, make sure all apps are up to date; developers have released a flurry of iOS 4.2.1-compatible app editions in the past few days.
Turn off Push. Navigate to Settings > Mail, Contacts, Calendars and tap “Fetch New Data.” Turn off Push.
Calibrate the battery. Fully charge your iPhone or iPad then allow it to drain until completely empty (device powers off on its own and displays a spinning progress indicator). Then recharge your device and check for excessive battery drain.
Close open Safari windows. One iOS application that consumes memory and processor time (and therefore battery life) in the background is Safari. Close all unused windows in the application by pressing the page switch button in the lower right portion of the screen then clicking the X at the top left of each page. See this page for screenshots.