Access to native contacts
Once the premium module has been added to your app, you may use the following APIs to access its functionality .

Implementation Guide

We have added a javascript native bridge to allow retrieval of user contacts.
To use it, you will need to create a javascript function on your web page:
1
function contacts_callback(data) {
2
// process the data here. In this example, we are just logging it
3
alert(JSON.stringify(data));
4
}
Copied!
Then open this url, passing in the name of your callback function:
window.location.href = 'gonative://contacts/getAll?callback=contacts_callback';
The app will prompt the user for permission. If granted, it will call contacts_callback with this object as data:
1
{
2
success: true,
3
contacts: [...]
4
}
Copied!
"contacts" will be an array of contact objects. Each object may have the following fields:
iOS:
    birthday
    namePrefix
    givenName
    middleName
    familyName
    previousFamilyName
    nameSuffix
    nickname
    phoneticGivenName
    phoneticMiddleName
    phoneticFamilyName
    organizationName
    departmentName
    jobTitle
    note
    phoneNumbers
    emailAddresses
    postalAddresses
Android:
    birthday
    givenName
    familyName
    companyName
    companyTitle
    note
    phoneNumbers
    emailAddresses
    postalAddresses
phoneNumbers, emailAddresses, and postalAddresses are arrays of objects, described below. All other fields are strings.
Each phoneNumber is an object with fields: label phoneNumber
Each emailAddress is an object with fields:
    label
    emailAddress
Each postalAddress is an object with fields:
    label
    street
    city
    state - iOS only
    region - Android only
    postalCode
    country
    isoCountryCode - iOS only
    subAdministrativeArea - iOS only
    subLocality - iOS only

Checking Permissions

The app will automatically prompt users for permissions as necessary. To separately check if permission have been granted, open the url:
window.location.href = 'gonative://contacts/getPermissionStatus?callback=CALLBACK';
The CALLBACK function will be run with an object like: {"status": "granted"}
The possible statuses on iOS are:
    granted – user has granted permission
    denied – user has explicitly denied permission
    restricted – access has been administratively prohibited
    notDetermined – user has not yet been asked for permission
The possible statuses on Android are:
    granted – user has granted permission
    denied – user has not yet been asked, or has explicitly denied permission
Last modified 1yr ago