Spec-Zone.ru › Web APIs

API выбора контактов

Ограниченная доступность

Данная функция не относится к Baseline, так как она не работает в некоторых из наиболее распространённых браузеров.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Данная функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.

Экспериментальная функция: Это экспериментальная технология.
Перед использованием в рабочей среде тщательно проверьте таблицу совместимости с браузерами.

API выбора контактов позволяет пользователям выбирать записи из своего списка контактов и делиться ограниченными данными выбранных записей с веб-сайтом или приложением.

Примечание: Этот API не доступен в веб-воркерах (не экспонируется через WorkerNavigator).

Концепции и использование API выбора контактов

Доступ к контактам давно является функцией, доступной в настольных приложениях. API выбора контактов предоставляет эту функциональность веб-приложениям.

Примеры использования включают выбор контактов для отправки сообщений через приложение электронной почты или чата, выбор номера телефона контакта для использования с VoIP (голосовой IP-телефонией) или для поиска контактов, которые уже присоединились к социальной платформе. Веб-браузеры также могут предложить согласованный опыт взаимодействия с другими приложениями на устройстве пользователя.

При вызове метода select интерфейса ContactsManager, пользователю предоставляется средство выбора контактов, с помощью которого он может выбрать контактную информацию для обмена с веб-приложением. Требуется взаимодействие пользователя до предоставления разрешения на отображение средства выбора контактов, и доступ к контактам не является постоянным; пользователь должен предоставлять доступ каждый раз, когда приложение запрашивает это.

Этот API доступен только из безопасного контекста верхнего уровня браузера и очень внимательно относится к чувствительности и конфиденциальности данных контактов. Ответственность за выбор данных для обмена лежит на пользователе, и разрешается доступ только к определённым данным для выбранных контактов без доступа к данным других контактов.

Интерфейсы

ContactAddress

Представляет физический адрес.

ContactsManager

Предоставляет способ выбора и обмена ограниченными данными контактов с веб-приложением.

Navigator.contacts

Возвращает экземпляр объекта ContactsManager, через который можно получить доступ ко всем остальным функциям.

Примеры

Обнаружение функции

Следующий код проверяет, поддерживается ли API выбора контактов.

const supported = "contacts" in navigator;

Проверка поддерживаемых свойств

Следующая асинхронная функция использует метод getProperties() для проверки поддерживаемых свойств.

async function checkProperties() {
  const supportedProperties = await navigator.contacts.getProperties();
  if (supportedProperties.includes("name")) {
    // run code for name support
  }
  if (supportedProperties.includes("email")) {
    // run code for email support
  }
  if (supportedProperties.includes("tel")) {
    // run code for telephone number support
  }
  if (supportedProperties.includes("address")) {
    // run code for address support
  }
  if (supportedProperties.includes("icon")) {
    // run code for avatar support
  }
}

Выбор контактов

В следующем примере устанавливается массив свойств, которые должны быть получены для каждого контакта, а также устанавливается объект параметров, позволяющий выбрать несколько контактов.

Затем определяется асинхронная функция, которая использует метод select() для отображения пользователю интерфейса выбора контактов и обработки выбранных результатов.

const props = ["name", "email", "tel", "address", "icon"];
const opts = { multiple: true };

async function getContacts() {
  try {
    const contacts = await navigator.contacts.select(props, opts);
    handleResults(contacts);
  } catch (ex) {
    // Handle any errors here.
  }
}

handleResults() — функция, определённая разработчиком.

Спецификации

Спецификация
API выбора контактов
# contacts-manager

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
Contact_Picker_API Нет Нет Нет Нет Нет 80 Нет 57 14.5
14.0–22.0Данный API был экспонирован, но при открытии селектора контактов произошла ошибка.
80
getProperties Нет Нет Нет Нет Нет 80 Нет 57 14.5
14.0–22.0Данный API был экспонирован, но при открытии селектора контактов произошла ошибка.
80
select Нет Нет Нет Нет Нет 80 Нет 57 14.5
14.0–22.0Данный API был экспонирован, но при открытии селектора контактов произошла ошибка.
80

См. также

  • Выбор контактов для веб-приложений
  • Демонстрация выбора контактов на glitch

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Contact_Picker_API

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API