Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Add a contact to the mobile device Address book from an HTML webpage

I'm currently building a site where, with one touch, you should be able to add a contact to your IPhone/Android Address book. The website is currently HTML5, but Javascript and/or PhP options could be implemented.

So is there a way that on the click of a link, the mobile device will open the Adress book already filled with the info I want it to have (Name, EMail Address, Street Address, Phone number).

I've looked everywhere to only find ways to program apps that would do the same thing. I want to make it from a webpage. Anywhere I can learn how to do this?

PS: Currently, I'm trying with everything in a .VCF file that could be downloaded on the click... this seems to lead me nowhere at the moment.

like image 746
Fredy31 Avatar asked Dec 29 '11 15:12

Fredy31


3 Answers

W3C defined Contacts API as a working draft but as far as I tested it's not supported in iOS devices(I have iPad with iOS4 and iPhone with iOS 5). You should test some android devices and tell us if they support Contacts API or not. That would be useful for future readers.

In case you have contacts api supported you can do this:

if(navigator.contacts){
   var mycontacts = [];
   navigator.contacts( ['emails.value', 'name', 'friends'],
                         function(contacts) { 
                           for(i in contacts) {

                               mycontacts.push(contacts[i]);

                         } );
}
like image 142
Mohsen Avatar answered Oct 22 '22 12:10

Mohsen


You might have to attack this from the device side of things instead. If that's what you end up doing try a cross-platform framework.

Not sure what your flexibility is, but for cross platform device integrated application I highly recommend PhoneGap. Plus, sounds like you've got some experience in HTML5 and CSS already. This could handle your contacts integration pretty easily across devices.

like image 45
Mat Nadrofsky Avatar answered Oct 22 '22 12:10

Mat Nadrofsky


The first Idea i got was to use for Android (most Android-User, have a Google-Account) the Google-Contact-API.

like image 1
bembii Avatar answered Oct 22 '22 12:10

bembii