Spec-Zone.ru › Web APIs

ContactsManager

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

Эта функция не является базовой, так как она не работает во всех широко используемых браузерах.

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

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

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

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

Функция ContactsManager доступна через глобальное свойство navigator.contacts.

Методы экземпляра

select() Экспериментальная

Возвращает Promise, который, при разрешении, предоставляет пользователю средство выбора контакта, позволяющее выбрать контакт(ы), который(е) они хотят поделиться.

getProperties() Экспериментальная

Возвращает Promise, который разрешается массивом Array strings, указывающий, какие свойства контактов доступны.

Примеры

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

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

const supported = "contacts" in navigator && "ContactsManager" in window;

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

Следующая асинхронная функция использует метод 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
ContactsManager Нет Нет Нет Нет Нет 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/ContactsManager

Spec-Zone.ru

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