VKWebAppOpenCodeReader
VKWebAppOpenCodeReader открывает камеру для считывания QR- или штрихкода и получает результат сканирования.
Пример
bridge.send('VKWebAppOpenCodeReader')
.then((data) => {
if (data.code_data) {
// Результат сканирования получен
}
})
.catch((error) => {
// Ошибка
console.log(error);
});
Платформы
Android, iOS
Параметры
—
Результат
Проверить результат можно:
- •
Используя объект
Promise, который возвращается вызовомbridge.send(...). - •
С помощью событий
VKWebAppOpenCodeReaderResultиVKWebAppOpenCodeReaderFailed.
Подробнее о проверке результатов при вызовах VK Bridge.
Возможные ошибки:
- •
This action cannot be performed in the background, если мини-приложение или игра запущены в фоновом режиме. - •
User denied, если пользователь закрыл камеру.
Объект Promise
Если обращение к платформе прошло успешно, управление будет передано в then-обработчик объекта Promise. В качестве ответа платформа возвращает объект со следующим полем:
Поле | Тип | Описание |
|---|---|---|
code_data | string | Строка, закодированная в QR- или штрихкоде. |
Если при обращении к платформе произошла ошибка, управление передаётся в метод catch. В качестве ответа платформа возвращает объект с информацией об ошибке, общий для всех событий VK Bridge.
События
VKWebAppOpenCodeReaderResult
Сигнализирует, что результат сканирования получен. В обработчик события на стороне пользователя передаются следующие данные:
{
detail: {
type: "VKWebAppOpenCodeReaderResult",
data: {
code_data: "https://vk.com/persik_ryzhiy"
}
}
}
Передаваемый объект подобен объекту, возвращаемому при успешном выполнении промиса.
VVKWebAppOpenCodeReaderFailed
Информирует об ошибке, которая произошла при взаимодействии с платформой.
В обработчик события на стороне пользователя передаётся объект с информацией об ошибке, общий для всех методов VK Bridge.
Пример обработки событий
Подробнее — в разделе Обработка результата.