cordova-plugin-contacts
Этот плагин определяет глобальный navigator.contacts объект, обеспечивающий доступ к базе данных контактов устройства.
Хотя объект прикреплен к глобальному navigator, он недоступен до события deviceready.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(navigator.contacts);
}
ПРЕДУПРЕЖДЕНИЕ: Сбор и использование данных контактов поднимают важные вопросы конфиденциальности. Политика конфиденциальности вашего приложения должна обсуждать, как приложение использует данные контактов и делится ли оно ими с другими сторонами. Информация о контактах считается конфиденциальной, поскольку она раскрывает людей, с которыми человек общается. Поэтому, помимо политики конфиденциальности приложения, вы должны серьезно рассмотреть возможность предоставления уведомления в режиме реального времени перед доступом или использованием данных контактов, если операционная система устройства этого не делает. Это уведомление должно предоставлять ту же информацию, что и выше, а также запрашивать разрешение пользователя (например, путем предоставления выбора OK и Нет, спасибо). Обратите внимание, что некоторые рынки приложений могут потребовать от приложения предоставить уведомление в режиме реального времени и получить разрешение пользователя перед доступом к данным контактов. Ясный и понятный пользовательский интерфейс, связанный с использованием данных контактов, помогает избежать путаницы у пользователя и воспринимаемого злоупотребления данными контактов. Для получения дополнительной информации см. Руководство по конфиденциальности.
Сообщайте о проблемах с этим плагином на отслеживателе проблем Apache Cordova
Установка
Требуется cordova 5.0+ ( текущая стабильная версия v1.0.0 )
cordova plugin add cordova-plugin-contacts
Более старые версии cordova всё ещё могут быть установлены через устаревший идентификатор ( устаревшая версия v0.2.16 )
cordova plugin add org.apache.cordova.contacts
Также возможно установить плагин через URL репозитория напрямую ( нестабильная версия )
cordova plugin add https://github.com/apache/cordova-plugin-contacts.git
Особенности iOS
С iOS 10 обязательно добавить запись NSContactsUsageDescription в файл info.plist.
NSContactsUsageDescription описывает причину доступа приложения к контактам пользователя. Когда система предлагает пользователю разрешить доступ, эта строка отображается в диалоговом окне. Для добавления этой записи вы можете передать переменную CONTACTS_USAGE_DESCRIPTION при установке плагина.
Пример: cordova plugin add cordova-plugin-contacts --variable CONTACTS_USAGE_DESCRIPTION="your usage message"
Если вы не передадите переменную, плагин добавит пустую строку в качестве значения.
Особенности Firefox OS
Создайте www/manifest.webapp, как описано в документации по манифесту. Добавьте соответствующие разрешения. Также необходимо изменить тип веб-приложения на «привилегированный» - документация по манифесту. ПРЕДУПРЕЖДЕНИЕ: Все привилегированные приложения применяют политику безопасности контента, которая запрещает встроенный скрипт. Инициализируйте приложение другим способом.
"type": "privileged",
"permissions": {
"contacts": {
"access": "readwrite",
"description": "Describe why there is a need for such permission"
}
}
Особенности Windows
До Windows 10: Любые контакты, возвращаемые методами find и pickContact, являются только для чтения, поэтому ваше приложение не может их изменять. Метод find доступен только на устройствах Windows Phone 8.1.
Windows 10 и выше: Контакты могут быть сохранены и будут сохранены в локальном хранилище приложения. Контакты также могут быть удалены.
Особенности Windows 8
Контакты Windows 8 являются только для чтения. Через API Cordova контакты не могут быть запрошены/поисковыми, вы должны проинформировать пользователя о выборе контакта, вызвав contacts.pickContact, который откроет приложение «Люди», где пользователь должен выбрать контакт. Любые возвращаемые контакты являются только для чтения, поэтому ваше приложение не может их изменять.
navigator.contacts
Методы
- navigator.contacts.create
- navigator.contacts.find
- navigator.contacts.pickContact
Объекты
- Contact
- ContactName
- ContactField
- ContactAddress
- ContactOrganization
- ContactFindOptions
- ContactError
- ContactFieldType
navigator.contacts.create
Метод navigator.contacts.create является синхронным и возвращает новый объект Contact.
Этот метод не сохраняет объект Contact в базе данных контактов устройства, для этого необходимо вызвать метод Contact.save.
Поддерживаемые платформы
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
Пример
var myContact = navigator.contacts.create({"displayName": "Test User"});
navigator.contacts.find
Метод navigator.contacts.find выполняется асинхронно, запрашивает базу данных контактов устройства и возвращает массив объектов Contact. Результирующие объекты передаются функции обратного вызова contactSuccess, указанной параметром contactSuccess.
Параметр contactFields указывает поля, которые будут использоваться в качестве квалификатора поиска. Параметр contactFields с нулевой длиной является недопустимым и приводит к ContactError.INVALID_ARGUMENT_ERROR. Значение contactFields, равное "*", ищет по всем полям контакта.
Строка contactFindOptions.filter может использоваться в качестве фильтра поиска при запросе к базе данных контактов. При наличии, выполняется нечувствительное к регистру частичное соответствие для каждого поля, указанного в параметре contactFields. Если совпадение найдено для любого из указанных полей, контакт возвращается. Используйте параметр contactFindOptions.desiredFields, чтобы управлять свойствами контакта, которые должны быть возвращены.
Поддерживаемые значения для параметров contactFields и contactFindOptions.desiredFields перечислены в объекте ContactFieldType.
Параметры
contactFields: Поля контактов, используемые в качестве квалификатора поиска. (DOMString[]) [Требуется]
contactSuccess: Функция обратного вызова успеха, вызываемая с массивом объектов Contact, возвращенных из базы данных. [Требуется]
contactError: Функция обратного вызова ошибки, вызываемая при возникновении ошибки. [Необязательно]
-
contactFindOptions: Опции поиска для фильтрации navigator.contacts. [Необязательно]
Ключи включают:
-
filter: Строка поиска, используемая для поиска navigator.contacts. (DOMString) (По умолчанию:
"") -
multiple: Определяет, возвращает ли операция поиска несколько navigator.contacts. (Boolean) (По умолчанию:
false) -
desiredFields: Поля контактов, которые должны быть возвращены. Если указаны, результирующий объект
Contactсодержит только значения для этих полей. (DOMString[]) [Необязательно] -
hasPhoneNumber(только Android): Фильтрует поиск, чтобы возвращались только контакты с указанным номером телефона. (Boolean) (По умолчанию:
false)
-
filter: Строка поиска, используемая для поиска navigator.contacts. (DOMString) (По умолчанию:
Поддерживаемые платформы
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
- Windows (Windows Phone 8.1 и Windows 10)
Пример
function onSuccess(contacts) {
alert('Found ' + contacts.length + ' contacts.');
};
function onError(contactError) {
alert('onError!');
};
// find all contacts with 'Bob' in any name field
var options = new ContactFindOptions();
options.filter = "Bob";
options.multiple = true;
options.desiredFields = [navigator.contacts.fieldType.id];
options.hasPhoneNumber = true;
var fields = [navigator.contacts.fieldType.displayName, navigator.contacts.fieldType.name];
navigator.contacts.find(fields, onSuccess, onError, options);
Особенности Windows
-
__contactFields__не поддерживается и будет проигнорирован.findметод всегда будет пытаться найти совпадение по имени, адресу электронной почты или номеру телефона контакта.
navigator.contacts.pickContact
Метод navigator.contacts.pickContact запускает выборщик контактов для выбора одного контакта. Результирующий объект передается функции обратного вызова contactSuccess, указанной параметром contactSuccess.
Параметры
contactSuccess: Функция обратного вызова успеха, вызываемая с единственным объектом Contact. [Требуется]
contactError: Функция обратного вызова ошибки, вызываемая при возникновении ошибки. [Необязательно]
Поддерживаемые платформы
- Android
- iOS
- Windows Phone 8
- Windows
Пример
navigator.contacts.pickContact(function(contact){
console.log('The following contact has been selected:' + JSON.stringify(contact));
},function(err){
console.log('Error: ' + err);
});
Особенности Android
Этот плагин запускает внешний Activity для выбора контактов. См. Руководство по жизненному циклу Android для объяснения того, как это влияет на ваше приложение. Если плагин возвращает свой результат в событии resume, то перед использованием необходимо обернуть возвращаемый объект в объект Contact. Вот пример:
function onResume(resumeEvent) {
if(resumeEvent.pendingResult) {
if(resumeEvent.pendingResult.pluginStatus === "OK") {
var contact = navigator.contacts.create(resumeEvent.pendingResult.result);
successCallback(contact);
} else {
failCallback(resumeEvent.pendingResult.result);
}
}
}
Contact
Объект Contact представляет собой контакт пользователя. Контакты могут быть созданы, сохранены или удалены из базы данных контактов устройства. Контакты также могут быть извлечены (в отдельном порядке или по группам) из базы данных, вызвав метод navigator.contacts.find.
ПРИМЕЧАНИЕ: Не все поля контактов, перечисленные выше, поддерживаются на каждой платформе устройств. Пожалуйста, обратитесь к разделу Особенности каждой платформы для получения подробной информации.
Свойства
id: Уникальный идентификатор. (DOMString)
displayName: Имя этого контакта, подходящее для отображения пользователям. (DOMString)
name: Объект, содержащий все компоненты имени человека. (ContactName)
nickname: Прозвище, по которому обращаться к контакту. (DOMString)
phoneNumbers: Массив всех телефонных номеров контакта. (ContactField[])
emails: Массив всех адресов электронной почты контакта. (ContactField[])
addresses: Массив всех адресов контакта. (ContactAddress[])
ims: Массив всех адресов IM контакта. (ContactField[])
organizations: Массив всех организаций контакта. (ContactOrganization[])
birthday: Дата рождения контакта. (Date)
note: Примечание о контакте. (DOMString)
photos: Массив фотографий контакта. (ContactField[])
categories: Массив всех пользовательских категорий, связанных с контактом. (ContactField[])
urls: Массив веб-страниц, связанных с контактом. (ContactField[])
Методы
clone: Возвращает новый
Contactобъект, являющийся глубокой копией вызываемого объекта, со свойствомidустановленным вnull.remove: Удаляет контакт из базы данных контактов устройства, в противном случае выполняет обратный вызов ошибки с объектом
ContactError.save: Сохраняет новый контакт в базе данных контактов устройства или обновляет существующий контакт, если контакт с тем же id уже существует.
Поддерживаемые платформы
- Amazon Fire OS
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
- Windows
Пример сохранения
function onSuccess(contact) {
alert("Save Success");
};
function onError(contactError) {
alert("Error = " + contactError.code);
};
// create a new contact object
var contact = navigator.contacts.create();
contact.displayName = "Plumber";
contact.nickname = "Plumber"; // specify both to support all devices
// populate some fields
var name = new ContactName();
name.givenName = "Jane";
name.familyName = "Doe";
contact.name = name;
// save to device
contact.save(onSuccess,onError);
Пример клонирования
// clone the contact object
var clone = contact.clone();
clone.name.givenName = "John";
console.log("Original contact name = " + contact.name.givenName);
console.log("Cloned contact name = " + clone.name.givenName);
Пример удаления
function onSuccess() {
alert("Removal Success");
};
function onError(contactError) {
alert("Error = " + contactError.code);
};
// remove the contact from the device
contact.remove(onSuccess,onError);
Удаление номера(ов) телефона из сохранённого контакта
// Example to create a contact with 3 phone numbers and then remove
// 2 phone numbers. This example is for illustrative purpose only
var myContact = navigator.contacts.create({"displayName": "Test User"});
var phoneNumbers = [];
phoneNumbers[0] = new ContactField('work', '768-555-1234', false);
phoneNumbers[1] = new ContactField('mobile', '999-555-5432', true); // preferred number
phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
myContact.phoneNumbers = phoneNumbers;
myContact.save(function (contact_obj) {
var contactObjToModify = contact_obj.clone();
contact_obj.remove(function(){
var phoneNumbers = [contactObjToModify.phoneNumbers[0]];
contactObjToModify.phoneNumbers = phoneNumbers;
contactObjToModify.save(function(c_obj){
console.log("All Done");
}, function(error){
console.log("Not able to save the cloned object: " + error);
});
}, function(contactError) {
console.log("Contact Remove Operation failed: " + contactError);
});
});
Особенности Android 2.X
-
categories: Не поддерживается на устройствах Android 2.X, возвращается
null.
Особенности BlackBerry 10
- id: Назначается устройством при сохранении контакта.
Особенности FirefoxOS
categories: Частично поддерживается. Поля pref и type возвращают
nullims: Не поддерживается
photos: Не поддерживается
Особенности iOS
displayName: Не поддерживается на iOS, возвращает
nullза исключением случаев, когда не указанContactName, в этом случае возвращает составное имя, nickname или"", соответственно.birthday: Должен быть введён как JavaScript
Dateобъект, таким же образом, как он возвращается.photos: Возвращает URL файла изображения, который хранится в временной директории приложения. Содержимое временной директории удаляется при выходе из приложения.
categories: Это свойство в настоящее время не поддерживается, возвращает
null.
Особенности Windows Phone 8
displayName: При создании контакта, предоставленное значение для параметра имени отображения отличается от имени отображения, полученного при поиске контакта.
urls: При создании контакта пользователи могут вводить и сохранять более одного веб-адреса, но только один доступен при поиске контакта.
phoneNumbers: Опция pref не поддерживается. type не поддерживается в операции find. Только одно
phoneNumberразрешено для каждого type.emails: Опция pref не поддерживается. Домашние и личные ссылки на одну и ту же запись электронной почты. Разрешена только одна запись для каждого type.
addresses: Поддерживает только типы work и home/personal. Домашний и личный типы ссылаются на одну и ту же запись адреса. Разрешена только одна запись для каждого type.
organizations: Разрешено только одно, и оно не поддерживает атрибуты pref, type и department.
note: Не поддерживается, возвращает
null.ims: Не поддерживается, возвращает
null.birthdays: Не поддерживается, возвращает
null.categories: Не поддерживается, возвращает
null.remove: Метод не поддерживается
Особенности Windows
photos: Возвращает URL файла изображения, который хранится во временной директории приложения.
birthdays: Не поддерживается, возвращает
null.categories: Не поддерживается, возвращает
null.remove: Метод поддерживается только в Windows 10 и выше.
ContactAddress
Объект ContactAddress хранит свойства одного адреса контакта. Объект Contact может включать более одного адреса в массиве ContactAddress[].
Свойства
pref: Устанавливается в
trueесли этотContactAddressсодержит предпочтительное значение пользователя. (boolean)type: Строка, указывающая тип поля, например, home. (DOMString)
formatted: Полный адрес, отформатированный для отображения. (DOMString)
streetAddress: Полный адрес улицы. (DOMString)
locality: Город или населенный пункт. (DOMString)
region: Штат или регион. (DOMString)
postalCode: Почтовый индекс. (DOMString)
country: Название страны. (DOMString)
Поддерживаемые платформы
- Amazon Fire OS
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
- Windows
Пример
// display the address information for all contacts
function onSuccess(contacts) {
for (var i = 0; i < contacts.length; i++) {
for (var j = 0; j < contacts[i].addresses.length; j++) {
alert("Pref: " + contacts[i].addresses[j].pref + "\n" +
"Type: " + contacts[i].addresses[j].type + "\n" +
"Formatted: " + contacts[i].addresses[j].formatted + "\n" +
"Street Address: " + contacts[i].addresses[j].streetAddress + "\n" +
"Locality: " + contacts[i].addresses[j].locality + "\n" +
"Region: " + contacts[i].addresses[j].region + "\n" +
"Postal Code: " + contacts[i].addresses[j].postalCode + "\n" +
"Country: " + contacts[i].addresses[j].country);
}
}
};
function onError(contactError) {
alert('onError!');
};
// find all contacts
var options = new ContactFindOptions();
options.filter = "";
options.multiple = true;
var filter = ["displayName", "addresses"];
navigator.contacts.find(filter, onSuccess, onError, options);
Особенности Android 2.X
-
pref: Не поддерживается на устройствах Android 2.X, возвращает
false.
Особенности BlackBerry 10
pref: Не поддерживается на устройствах BlackBerry, возвращает
false.type: Частично поддерживается. Только по одному адресу типа Work и Home может быть сохранён на контакт.
formatted: Частично поддерживается. Возвращает конкатенацию всех полей адреса BlackBerry.
streetAddress: Поддерживается. Возвращает конкатенацию полей адреса BlackBerry address1 и address2.
locality: Поддерживается. Хранится в поле адреса BlackBerry city.
region: Поддерживается. Хранится в поле адреса BlackBerry stateProvince.
postalCode: Поддерживается. Хранится в поле адреса BlackBerry zipPostal.
country: Поддерживается.
Особенности FirefoxOS
- formatted: В настоящее время не поддерживается
Особенности iOS
pref: Не поддерживается на устройствах iOS, возвращает
false.formatted: В настоящее время не поддерживается.
Особенности Windows
- pref: Не поддерживается
ContactError
Объект ContactError возвращается пользователю через функцию обратного вызова contactError при возникновении ошибки.
Свойства
- code: Один из предопределённых кодов ошибок, перечисленных ниже.
Константы
-
ContactError.UNKNOWN_ERROR(код 0) -
ContactError.INVALID_ARGUMENT_ERROR(код 1) -
ContactError.TIMEOUT_ERROR(код 2) -
ContactError.PENDING_OPERATION_ERROR(код 3) -
ContactError.IO_ERROR(код 4) -
ContactError.NOT_SUPPORTED_ERROR(код 5) -
ContactError.OPERATION_CANCELLED_ERROR(код 6) -
ContactError.PERMISSION_DENIED_ERROR(код 20)
ContactField
Объект ContactField — это компонент повторного использования, который обобщённо представляет поля контактов. Каждый объект ContactField содержит свойства value, type, и pref. Объект Contact хранит несколько свойств в массивах ContactField[], таких как номера телефонов и адреса электронной почты.
В большинстве случаев для атрибута type объекта ContactField нет предопределённых значений. Например, номер телефона может иметь значения type home, work, mobile, iPhone или любое другое значение, поддерживаемое базой данных контактов конкретной платформы устройства. Однако для поля Contact photos поле type указывает формат возвращаемого изображения: url, когда атрибут value содержит URL изображения, или base64, когда value содержит строку изображения в формате base64.
Свойства
type: Строка, указывающая тип поля, например, home. (DOMString)
value: Значение поля, например, номер телефона или адрес электронной почты. (DOMString)
pref: Устанавливается в
trueесли этотContactFieldсодержит предпочтительное значение пользователя. (boolean)
Поддерживаемые платформы
- Amazon Fire OS
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
- Windows
Пример
// create a new contact
var contact = navigator.contacts.create();
// store contact phone numbers in ContactField[]
var phoneNumbers = [];
phoneNumbers[0] = new ContactField('work', '212-555-1234', false);
phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // preferred number
phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
contact.phoneNumbers = phoneNumbers;
// save the contact
contact.save();
Особенности Android
-
pref: Не поддерживается, возвращает
false.
Особенности BlackBerry 10
type: Частично поддерживается. Используется для номеров телефонов.
value: Поддерживается.
pref: Не поддерживается, возвращает
false.
Особенности iOS
-
pref: Не поддерживается, возвращает
false.
Особенности Windows
-
pref: Не поддерживается, возвращает
false.
ContactName
Содержит различные виды информации о имени объекта Contact.
Свойства
formatted: Полное имя контакта. (DOMString)
familyName: Фамилия контакта. (DOMString)
givenName: Имя контакта. (DOMString)
middleName: Отчество контакта. (DOMString)
honorificPrefix: Приставка контакта (например, Mr. или Dr.) (DOMString)
honorificSuffix: Суффикс контакта (например, Esq.). (DOMString)
Поддерживаемые платформы
- Amazon Fire OS
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
- Windows
Пример
function onSuccess(contacts) {
for (var i = 0; i < contacts.length; i++) {
alert("Formatted: " + contacts[i].name.formatted + "\n" +
"Family Name: " + contacts[i].name.familyName + "\n" +
"Given Name: " + contacts[i].name.givenName + "\n" +
"Middle Name: " + contacts[i].name.middleName + "\n" +
"Suffix: " + contacts[i].name.honorificSuffix + "\n" +
"Prefix: " + contacts[i].name.honorificSuffix);
}
};
function onError(contactError) {
alert('onError!');
};
var options = new ContactFindOptions();
options.filter = "";
options.multiple = true;
filter = ["displayName", "name"];
navigator.contacts.find(filter, onSuccess, onError, options);
Особенности Android
-
formatted: Частично поддерживается и является только для чтения. Возвращает конкатенацию
honorificPrefix,givenName,middleName,familyName, иhonorificSuffix.
Особенности BlackBerry 10
formatted: Частично поддерживается. Возвращает конкатенацию полей firstName и lastName BlackBerry.
familyName: Поддерживается. Хранится в поле lastName BlackBerry.
givenName: Поддерживается. Хранится в поле firstName BlackBerry.
middleName: Не поддерживается, возвращает
null.honorificPrefix: Не поддерживается, возвращает
null.honorificSuffix: Не поддерживается, возвращает
null.
Особенности FirefoxOS
-
formatted: Частично поддерживается и только для чтения. Возвращает конкатенацию
honorificPrefix,givenName,middleName,familyName, иhonorificSuffix.
Особенности iOS
- formatted: Частично поддерживается. Возвращает составное имя iOS, но только для чтения.
Особенности Windows
formatted: Это единственное свойство имени, и оно идентично
displayName, иnickname.familyName: не поддерживается
givenName: не поддерживается
middleName: не поддерживается
honorificPrefix: не поддерживается
honorificSuffix: не поддерживается
ContactOrganization
Объект ContactOrganization хранит свойства организации контакта. Объект Contact хранит один или несколько объектов ContactOrganization в массиве.
Свойства
pref: Установлено в значение
true, если этотContactOrganizationсодержит предпочтительное значение пользователя. (boolean)type: Строка, указывающая тип поля, например, home. _(DOMString)
name: Название организации. (DOMString)
department: Отдел, за который работает контакт. (DOMString)
title: Должность контакта в организации. (DOMString)
Поддерживаемые платформы
- Android
- BlackBerry 10
- Firefox OS
- iOS
- Windows Phone 8
- Windows (только устройства Windows 8.1 и Windows Phone 8.1)
Пример
function onSuccess(contacts) {
for (var i = 0; i < contacts.length; i++) {
for (var j = 0; j < contacts[i].organizations.length; j++) {
alert("Pref: " + contacts[i].organizations[j].pref + "\n" +
"Type: " + contacts[i].organizations[j].type + "\n" +
"Name: " + contacts[i].organizations[j].name + "\n" +
"Department: " + contacts[i].organizations[j].department + "\n" +
"Title: " + contacts[i].organizations[j].title);
}
}
};
function onError(contactError) {
alert('onError!');
};
var options = new ContactFindOptions();
options.filter = "";
options.multiple = true;
filter = ["displayName", "organizations"];
navigator.contacts.find(filter, onSuccess, onError, options);
Особенности Android 2.X
-
pref: Не поддерживается устройствами Android 2.X, возвращает
false.
Особенности BlackBerry 10
pref: Не поддерживается устройствами BlackBerry, возвращает
false.type: Не поддерживается устройствами BlackBerry, возвращает
null.name: Частично поддерживается. Первое имя организации хранится в поле BlackBerry company.
department: Не поддерживается, возвращает
null.title: Частично поддерживается. Первое название должности хранится в поле BlackBerry jobTitle.
Особенности Firefox OS
pref: Не поддерживается
type: Не поддерживается
department: Не поддерживается
Поля name и title хранятся в org и jobTitle.
Особенности iOS
pref: Не поддерживается на устройствах iOS, возвращает
false.type: Не поддерживается на устройствах iOS, возвращает
null.name: Частично поддерживается. Первое имя организации хранится в поле iOS kABPersonOrganizationProperty.
department: Частично поддерживается. Первое имя отдела хранится в поле iOS kABPersonDepartmentProperty.
title: Частично поддерживается. Первая должность хранится в поле iOS kABPersonJobTitleProperty.
Особенности Windows
pref: Не поддерживается, возвращает
false.type: Не поддерживается, возвращает
null.
ContactFieldType
Объект ContactFieldType представляет собой перечисление возможных типов полей, таких как 'phoneNumbers' или 'emails', которые могут использоваться для управления тем, какие свойства контактов должны быть возвращены методом contacts.find() (см. contactFindOptions.desiredFields), или для указания полей для поиска (через параметр contactFields). Возможные значения:
navigator.contacts.fieldType.addressesnavigator.contacts.fieldType.birthdaynavigator.contacts.fieldType.categoriesnavigator.contacts.fieldType.countrynavigator.contacts.fieldType.departmentnavigator.contacts.fieldType.displayNamenavigator.contacts.fieldType.emailsnavigator.contacts.fieldType.familyNamenavigator.contacts.fieldType.formattednavigator.contacts.fieldType.givenNamenavigator.contacts.fieldType.honorificPrefixnavigator.contacts.fieldType.honorificSuffixnavigator.contacts.fieldType.idnavigator.contacts.fieldType.imsnavigator.contacts.fieldType.localitynavigator.contacts.fieldType.middleNamenavigator.contacts.fieldType.namenavigator.contacts.fieldType.nicknamenavigator.contacts.fieldType.notenavigator.contacts.fieldType.organizationsnavigator.contacts.fieldType.phoneNumbersnavigator.contacts.fieldType.photosnavigator.contacts.fieldType.postalCodenavigator.contacts.fieldType.regionnavigator.contacts.fieldType.streetAddressnavigator.contacts.fieldType.titlenavigator.contacts.fieldType.urls
© 2012, 2013, 2015 The Apache Software Foundation
Licensed under the Apache License 2.0.
https://cordova.apache.org/docs/en/6.x/reference/cordova-plugin-contacts/index.html