Fix and prevent iPhone freezes and crashes

Editor’s Note: The following article is an excerpt from Take Control of Your iPhone, a $15 electronic book available for download from TidBits Publishing. All Take Control ebooks, including this one, are 50 percent off through April 29, 2008. The 195-page ebook helps readers understand what’s going on under the hood of the iPhone, with lots of tips for using the iPhone more effectively and an emphasis on troubleshooting assistance for solving problems related to activating, syncing, application crashes, iPhone freezes, handset security, and more.

Freezes and crashes are generic iPhone problems that can occur in any iPhone software, from Safari to Maps. In this excerpt from Take Control of Your iPhone, I cover iPhone freezes and crashes, explaining what’s going on, how to recover from them, and how to avoid them.

Note: Applications vs. Widgets: Each program on an iPhone falls into one of two categories: applications (Phone, Mail, Safari, and iPod) and widgets (the collection of items, from Text to Settings, that appear above the main four application icons on the Home screen). Apple refers to the latter category as both widgets and applications in its various documents. The main difference is that widgets tend to be smaller, single function programs (akin to Dashboard widgets in Mac OS X) while applications are more full featured (akin to programs in the Applications folder of Mac OS X).

A quasi-third option is currently the only option available for third-party developers to create software for iPhone: Web-based applications. These are run from Safari and are often referred to simply as Web applications.

Handle freezes

While running any of iPhone’s applications or widgets, your iPhone may suddenly stop responding to your touchscreen gestures. Even pressing the Home button produces no effect. Typically, any display activity, such as a Web page that is loading or a video that is playing, halts as well. When this occurs, the iPhone software has “frozen.”

Another symptom of a freeze is that the iPhone screen remains black, as if it is not turned on (although this symptom may also be caused by a “dead” battery).

To unfreeze an iPhone press and hold down the Home key for about six seconds. If this works, you are returned to the Home screen, with (hopefully) everything working again. If a force-quit fails to unfreeze the application, try further actions as described ahead in this section (begin with Restart, below).

Handle crashes

When you’re working with an iPhone application or widget, the iPhone may suddenly toss you back to the Home screen. When you return to the program you were using, you may further find that some of your recent changes have been lost. For example, a Web page that you had closed may now be back. When this occurs, it means the iPhone software has crashed.

After being dumped back Home, you should simply return to what you were doing and hope the crash does not recur. If the same crash does happen again (and sometimes again and again), try restarting your iPhone (described next). This often helps because many crashes are caused by a combination of events that won’t reoccur in exactly the same way after a restart.

Restart

To restart an iPhone, press and hold the Sleep/Wake button (the physical button at the top of the iPhone, next to the SIM card tray) until a red (and white arrow) slider (adjacent to the words “slide to power off”) appears on the screen. Drag the slider to power off your iPhone. Then press and hold the Sleep/Wake button again until the Apple logo appears. Wait a few seconds for iPhone’s startup sequence to finish, and you should be back at the Home screen.

While I refer to this procedure as a “restart,” some Apple documentation refers to it as a “reset.” I prefer “restart” both because it is consistent with the same action on a computer and because it avoids confusion with other meanings of “reset” for the iPhone.

Force restart

If your iPhone is really confused, even holding down the Sleep/Wake button may have no effect. In such cases, you can generally force the iPhone to restart by holding down the Sleep/Wake and Home buttons simultaneously for around 10 seconds.

Although I have seen no official confirmation of this from Apple, I expect that the difference between a normal and a forced restart is that the former restart is more “graceful,” making sure that all files that should be closed before restarting have done so.

iPhone crash data on your Mac

While the iPhone doesn’t provide feedback when it crashes, it does keeps track of the event behind the scenes. The next time you sync your iPhone with iTunes, you get a message that states: “Your iPhone contains diagnostic information which may help Apple improve its products.”

The message that appears in iTunes when you attempt to sync an iPhone that has had a crash since the previous sync.
This message means that one or more crashes occurred since your last sync. It three buttons:

  • Send to Apple: Click this button to forward details of the crash to Apple (hopefully helping them figure out the cause and how to fix it)
  • Don’t Send: Click this button to dismiss the dialog.
  • Show Details: Click this button to open a folder in the Finder where the crash data are stored: /Library/Logs/Crashreporter/MobileDevice/youriPhone .
    The exact contents of this folder depends upon the crash history for your particular iPhone. For example, if Safari has crashed, you’ll find a file with MobileSafari at the start of its name and .crash at the end (with numeric data in the middle). You can open the file in any text editor. Or, if you change the file’s extension to .log, double-clicking the file opens it in Mac OS X’s Console utility. It’s unlikely that you’ll glean much information from these files, but you may find a clue to the cause of a crash.

The crash dialog also has a “Do not ask me again” checkbox. Leave it enabled to avoid being told about crashes in the future. But what if you enable it and later change your mind?

You can reset it by Control-clicking (or right clicking) on the name of your iPhone in the Devices section of iTunes and then choosing Reset Warnings from the contextual menu.

Prevent freezes and crashes

The complete solution for dealing with freezes and crashes is to know not only how to recover from them, but also how to eliminate them in the future. You can’t prevent all freezes and crashes, but you can minimize them by keeping the iPhone and iTunes software updated and by making sure your iPhone has sufficient free space and memory.

Update your iPhone

You should update your iPhone’s software whether you have a specific problem at the moment or not. Updates fix known bugs in existing software and add new features. More specifically to our discussion here, if a bug in Apple’s software causes a recurring problem, the ultimate solution is for Apple to fix it via an update.

By default, iTunes automatically checks for such updates at regular intervals (you can disable this by unchecking “Check for updates automatically” in the General pane of the iTunes Preferences window). You can manually initiate a check at any time by clicking the Check for Update button in an iPhone Summary tab in iTunes.

If a check reveals that an update exists, the Check for Update button changes to Update and a dialog appears, informing you that “a new iPhone software version is available.” From this dialog, you can click either Download Only or Download and Install. If you choose Download Only, another dialog eventually appears that again states that “a new iPhone software version is available” and provides buttons for Install and Don’t Install.

These dialogs have “Do not ask me again” checkboxes. I suggest that you disable those boxes to be sure you are asked about each update before it installs. Of course, your computer still should not install an update without your knowledge, but why take chances? You’re better off having to confirm again, just in case reliable reports on the Web indicate that a given update makes things worse rather than better.

The update file downloads to ~/Library/iTunes/iPhone Software Updates/. For minor updates (such as from 1.0.1 to 1.0.2), the names of these update files typically end in Update.ipsw. However, for more significant updates (such as from 1.0.2 to 1.1.1), iTunes uses the restore file (Restore.ipsw) for both updating and restoring.

Update requires re-activation? After updating your iPhone, you may see an alert that says “Activating iPhone.” In this case, you must be in an area where you can access the AT&T network for the update to complete. If the message persists, try moving to a different location.

If you get an error message: When updating your iPhone, you may receive error messages. If this happens, and the update fails, try doing a restore first. This should get things working again, and it will likely provide the latest version of the iPhone software. However, to be certain that no newer version is needed, and to confirm that all now seems to be working, click Check for Update again after the restore is complete.

Note: A Stealth Update?: When Apple released iLife ’08, they included a new Web Gallery feature, which can receive a photo sent to it from an iPhone. To accomplish this, a “Send to Web Gallery” button appears as an option for a photo on the iPhone, via the Camera or the Photos application.

Surprisingly, this new button appeared a day or so after iLife ’08 was released, without requiring any update to the iPhone software. This led to speculation that the iPhone software was updated, via the EDGE network, without any notification to the user. Apple has never confirmed how it was done, and there are other possible mechanisms that could have accomplished this feat. Still, it’s worth noting that new features may appear on your iPhone without warning.

Update iTunes too

To make sure that syncing and other interactions between iTunes and your iPhone go smoothly, which in turn can prevent your iPhone from crashing and freezing, always update to the latest version of iTunes. iTunes updates contain software specifically relevant to the iPhone (notably the AppleMobileDevice and AppleMobileSync software installed in several locations of the /System/Library—such as the AppleMobileDevice.kext file in /System/Library/Extensions, and the equivalents in Windows).

Provide sufficient “breathing room”

By “breathing room,” I mean two things:

  • Don’t use up every last whit of drive space: Leave at least 250 MB free at all times. This is because the iPhone needs space to create temporary files. Without sufficient space for these files, a crash may occur. You can tell how much free space remains by checking the usage graph at the bottom of an iPhone’s Summary tab in iTunes.
  • Don’t overload iPhone’s memory: For example, if you check a mailbox that starts downloading 200 messages to your iPhone and then shift to Safari and start opening several Web pages, you are asking for trouble, likely in the form of a crash.

Check the iPhone’s diagnostic data

Some iPhone problems are specific to a particular version of the device’s software or hardware. As such, it can be useful to know exactly which versions of the various components you have. Even if you can’t directly use this information, it can be valuable to a tech support person (such as an Apple employee at a Genius Bar). Such data is stored in two main locations:

  • About: Tap the Settings -> General -> About. Here, you’ll find the Version number and Modem Firmware number, which you can compare with the numbers of the most recent updates (as may be listed on Apple’s Web site or other Web sites where such matters are covered) to confirm that you have the latest versions.
    The Wi-Fi Address and Bluetooth numbers may also be needed for troubleshooting (as covered later in this book).
  • Field Test: More esoteric are the “field test” data. To access these, go to the keypad of iPhone’s Phone application and enter: *3001#12345#*

Then tap the Call key. A Field Test screen appears from which you can access such data as Network Information and Cell Information.

The most interesting tidbit here is found if you tap the Versions item. This reveals the LCD Panel ID. If an apparent problem with your display is linked to a specific version of the LCD panel (as determined from information found on the Web or obtained from Apple), this will tell you if you have the problematic panel.

[Ted Landau is the guru of Macintosh troubleshooting, thanks to best-selling books and innumerable magazine articles for Macworld and many other publications. His latest book is Take Control of Your iPhone (TidBits Publishing, 2007).]

Subscribe to the iOS Tips & Trends Newsletter

Comments