Wednesday, July 25, 2012

Elegantly importing photos from Android to your iPhoto library

Man, it's been a long time since I did a blog post.  I usually finally do one when I've been beating my head against the wall, trying to figure something out, and finally arrive at a workable solution, one that could hopefully benefit at least one other miserable person like myself.  Well, I finally hit on one of those today.

So for a long time my wife has had a simple request: I want to be able to import the photos I have on my Android phone (Samsung Galaxy S2) into my iPhoto library on my Mac:

For some reason our Android phones have never been able to do this.  If you plug them into our Macbook via a USB cable or even remove the micro SD card and connect it directly none of the pictures show up in the iPhoto import screen.  Other people I'd talked to had no issues doing this.  Why me?  Grr.  This came to a head when my wife picked up a new iPad the other day and she wanted the ability to manage pictures and do this importing through that as well.

Well it turns out I'm not alone in this issue after finally doing some research.  At some point Android stopped being strict on how it followed the DCIM digital camera specification for storing photos.  Unfortunately iPhoto is strict about it and for good reason: you don't want it importing every photo it finds on your Android when you plug it in - just ones that reside in the DCIM directory and adhere to the DCIM naming convention.  Some Androids adhere to this spec while many other don't (including the Galaxy S2).  Unfortunately if you're in the later camp, there's no good way to make the direct import approach work.  There are a couple apps on the Android market that will force your photos to be strict DCIM but they're somewhat clunky and don't work on newer version of Android (like ICS).

So the solution I finally found that worked was to use indirect sync.

I found the Android app called DropSync which syncs one or more individual directories on your Android to a DropBox folder.  Therefore you can sync your camera folder on your Android (ex: /sdcard/DCIM/Camera) with a new folder on DropBox (ex: /Photos/MyAndroid).  The free version limits you to files < 5MB but the paid is unlimited and worth the couple bucks.  This is a two-way sync app so that files deleted in DropBox will get deleted on the Android making it super easy to keep the camera directory clean without having to do anything on the Android itself.

So the workflow is:
  • Take a pictures on your Android phone
  • DropSync detects the new files and automatically syncs them to DropBox (assuming you're on a wifi network - if not, it gets synced the next time it is - wifi-only sync is configurable)
  • Importing pictures into your iPhoto library on your Mac (or PC):
    • Open your local DropBox folder
    • Browse to the photos directory that's being sync'd with your Android
    • Select all the pictures you wish to import into iPhoto
    • Drag them into iPhoto and import them
    • Optionally (but recommended) delete the imported photos and undesirable photos. This will delete them from your phone as well the next time DropSync performs a sync.
  • Importing  pictures into your iPhoto library via your iOS device (ex: your wife's iPad):
    • Open the DropBox app
    • Browse to the photos directory that's being sync'd with your Android
    • Click on each photo and save it to the device's photos (which goes into the Camera Roll).  Unfortunately you can't do bulk save, but one at a time isn't too bad.
    • Optionally (but recommended) delete the imported photos and undesirable photos.  This will delete them from your phone as well the next time DropSync performs a sync.
    • Optionally touch up the pictures in the Photos or maybe iPhoto app
    • Sync the iOS device with iTunes on your Mac (or PC) to finally import them into your iPhoto library
DropBox allows you to share folders so, for example, the husband's Android camera pictures folder can be shared with the wife's and she can perform the above process for both devices in one place.  This could essentially be done on any number of devices until you hit your DropBox storage limit.

UPDATE (7/26/12):
A friend of mine pointed out that the DropBox Android app (as well as the iOS app) has a feature that uploads your camera photos for you automatically to a folder in DropBox called /Camera Uploads.  The pros to this approach vs. using DropSync is that DropBox actually gives you more storage (up to 3GB I think) as you add more and more pictures/videos, increasing your overall storage limit for free.  However the con is that the DropBox upload feature is only a one-way sync.  Therefore if you delete the photos from your the DropBox folder they won't automatically be deleted from your phone.  For me, the two-way sync is key to the simplicity of the solution, but others may prefer to just use the DropBox feature instead.