View
 

iPhone: Get contacts

Page history last edited by Becky 1 year ago
FYI - these Contact examples are for 0.9.3 and before.   Please see http://docs.phonegap.com/phonegap_contacts_contacts.md.html for 0.9.4 and beyond.
 
 function getContactsPrompt() {
    debug.log("getContactsPrompt");
    var pageSize = prompt("Page size", 10);
    if (pageSize) {
        var pageNumber = prompt("Page number", 1);
        if (pageNumber) {
            var nameFilter = prompt("Name filter", null);
            getContacts(parseInt(pageSize), parseInt(pageNumber), nameFilter);
        }
    }
}

function getContacts(pageSize, pageNumber, nameFilter) {
    debug.log("getContacts");
    var fail = function() {};
    var options = {};

    if (pageSize)
         options.pageSize = pageSize;
    if (pageNumber)
         options.pageNumber = pageNumber;

    // nameFilter can have an asterisk at the end for wildcard match
    if (nameFilter)
         options.nameFilter = nameFilter;

    navigator.contacts.getAllContacts(getContacts_Return, fail, options);
}

function getContacts_Return(contactsArray)
 {
    var names = "";
    for (var i = 0; i < contactsArray.length; i++) {
        
        var firstName = contactsArray[i].firstName;
        var lastName = contactsArray[i].lastName;
        
        for (var j = 0; j < contactsArray[i].phoneNumbers.length; ++j) {
             var phoneNumber = contactsArray[i].phoneNumbers[j].label + " : " +
                contactsArray[i].phoneNumbers[j].value;
             // do something with phoneNumber
        }

        for (var k = 0; k < contactsArray[i].emails.length; ++k) {
             var email = contactsArray[i].emails[k].label + " : " +
                contactsArray[i].emails[k].value;
             // do something with email
        }
        names += firstName + " " + lastName;
        if (i + 1 != contactsArray.length)
        names += ",";
     }

     navigator.notification.alert(names, "Contacts Returned", "Dismiss");
}