Silly Workaround for Android 2.2 Not Importing vCard Files via Bluetooth

I bought myself a new phone yesterday: an HTC Desire HD, running Android 2.2. On the whole, I’m extremely happy with it — especially since my previous phone was an LG Windows Mobile piece of junk which didn’t really deserve the name ‘smartphone’. There are a few quibbles, however.

One of them is this: I had a lot of contacts stored in the phone memory of the LG rather than on the SIMM card, so naturally I wanted to transfer them to its successor, preferably via Bluetooth. The HTC actually offered that option during the initial setup, but only for a limited number of models, mine not included.

But, fear not: the LG offered the option to transmit contacts to another phone via Bluetooth. One at a time, unfortunately, but hey — it didn’t take that long, and it gave me the opportunity to clean out some contacts. After perhaps five minutes of diligent Bluetoothing, all the contacts I still cared about seemed to have been transfered, with the Android phone happily saying something along the lines of “transfer received successfully!” for each one.

And after that, they turned out to have disappeared.

The new contacts were nowhere to be found on the new phone. After some head-scratching, I discovered that they had in fact arrived in vCard (.vcf) format, which is of course the accepted standard for exchanging contact information between phones. All the files were there, in the downloads/bluetooth folder on the SD card. They just had not actually been imported into my contacts.

This turned out to be a known issue: until quite recently, Android, as the only mobile phone OS on the market, basically did not know anything about vCards. Since Android 2.2, this has apparently been improved: the phone will now recognise them in at least some situations, and will even offer to export its contacts in .vcf format. Unfortunately, they apparently forgot to add this feature to the Bluetooth file transfer module.

A whole bunch of third-party apps have been written to address this oversight. The first one I tried wasn’t very good however: first I had to figure out the form in which it expected me to enter the location of the files (for the record: it’s /mnt/sdcard/downloads/bluetooth) and then it failed to parse the particular flavour of .vcf file produced by Windows Mobile.

Fortunately, in Android 2.2 it turns out there is an easier way which does not require installing any third-party software. It’s silly, but it works: just send yourself an e-mail containing all the .vcf files as attachments. Sync your mail, open the attachments, and each will be imported into your contacts with a single tap. It’s not too cumbersome actually, but it really shouldn’t have been necessary.

So, how were people expected to do this before Android 2.2 came along? Well, apparently, the semi-official answer to that was to upload your .vcf files to your gmail account, after which they would be automatically loaded into your phone, the next time you sync with gmail. (Thus making sure that you need to let Google know about those contacts, and also that you will register your gmail account with your phone if you had not already done so — although you probably did that anyway, since you need a Google account to be allowed to access the appstore. Sometimes they can be really unsubtle about these things.)

Apart from that however, and the fact that I have not yet figured out how to use the “Internet Pass-Through” feature with my Linux desktop, it’s a great little machine. Now, off to write some apps for it.