Can I retrieve a contact image from the iPhone contact list?

If you're syncing your iPhone with Address Book on a Mac then you can edit the contact in Address Book, click on the image to select it and then copy it to the clipboard.


If you're using your iPhone with a Mac, and syncing contacts between them, here's one way to get your hands on the photo, which I just tried. But this certainly is far from optimal; I hope there's some easier way.

[Edit: John Topley just described how to get the photo directly from Address Book's UI, without delving into its data folders; that is the easier way I was hoping for. So you'd probably only want to resort to the method below in some special cases, e.g. if you need all the contact photos at once.]


Under your home folder, locate the Library/Application Support/AddressBook/images subfolder. Here are all the images you've assigned to people in your contacts. The filenames will be something like 36C3C5E1-8BCE-4E0D-9FB4-12562C745A5A though, so to see what each image is, you'll need to change the filename to end with .jpg (make a copy first not to screw anything up).

If you have lots of contacts with photos, you wouldn't want to go through them manually like this, of course. But some scriptwork on the command line would make it easier; something like this:

  1. Make a copy of the whole AddressBook/images folder somewhere (e.g. using Finder)
  2. Fire up Terminal and cd to that (copied, not original) folder
  3. Run: for i in *; do mv $i $i.jpg; done
  4. Now, look at the folder in Finder again (in "Show as icons" mode), and using your built-in facial recognition abilities ;-) you should find the right image in a matter of seconds (unless you have hundreds and hundreds of photos in there)