VKWebAppOpenContacts

VKWebAppOpenContacts запрашивает доступ к телефонной книге на устройстве, открывает окно выбора контакта из телефонной книги и получает данные контакта.

Пример

JavaScript
bridge.send('VKWebAppOpenContacts') .then((data) => { if (data.phone) { // Данные контакта получены } }) .catch((error) => { // Ошибка console.log(error); });

Совместимость

Площадки
Платформы
ВКонтакте
Android, iOS
Одноклассники
Android, iOS

Параметры

Результат

Проверить результат можно:

  • Используя объект Promise, который возвращается вызовом bridge.send(...).

  • С помощью событий VKWebAppOpenContactsResult и VKWebAppOpenContactsFailed.

Подробнее о проверке результатов при вызовах VK Bridge.

Возможные ошибки:

  • This action cannot be performed in the background, если приложение запущено в фоновом режиме.
  • User denied, если пользователь закрыл телефонную книгу.

Объект Promise

Если обращение к платформе прошло успешно, управление будет передано в then-обработчик объекта Promise. В качестве ответа платформа возвращает объект со следующими полями:

Поле
Тип
Описание
phone
string
Номер телефона в формате, в котором он хранится в телефонной книге.
first_name
string
Имя пользователя, указанное в телефонной книге.
last_name
string
Фамилия пользователя, указанная в телефонной книге.

Если при обращении к платформе произошла ошибка, управление передаётся в метод catch. В качестве ответа платформа возвращает объект с информацией об ошибке, общий для всех событий VK Bridge.

События

VKWebAppOpenContactsResult

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

JavaScript
{ detail: { type: "VKWebAppOpenContactsResult", data: { phone: "79217770099", first_name: "Персик", last_name: "Рыжий" } } }

Передаваемый объект подобен объекту, возвращаемому при успешном выполнении промиса.

VKWebAppOpenContactsFailed

Информирует об ошибке, которая произошла при взаимодействии с платформой.

В обработчик события на стороне пользователя передаётся объект с информацией об ошибке, общий для всех методов VK Bridge.

Пример обработки событий

Подробнее — в разделе Обработка результата.

Материалы по теме