VKWebAppOpenApp
VKWebAppOpenApp открывает другое приложение из текущего мини-приложения или игры.
Пример
bridge.send('VKWebAppOpenApp', {
app_id: 6909581,
location: 'test'
})
.then((data) => {
if (data.result) {
// Приложение открыто
}
})
.catch((error) => {
// Ошибка
console.log(error);
});
Платформы
Android, iOS, Mobile Web, Web
Параметры
Android, iOS
Поле | Тип | Описание |
|---|---|---|
app_id
обязательное | integer | Идентификатор открываемого мини-приложения или игры. |
location
необязательное | string | Хеш — строка после символа # в URL, например vk.com/app12345#/path=start-screen. |
group_id
необязательное | integer | Идентификатор сообщества, если надо эмулировать открытие приложения из сообщества.
Важно. Укажите идентификатор без знака «минус».
Где найти идентификатор сообщества? |
close_parent
необязательное | boolean | Сообщает платформе, что текущее приложение надо закрыть после того, как из него откроется другое. |
Mobile Web, Web
Поле | Тип | Описание |
|---|---|---|
app_id
обязательное | integer | Идентификатор открываемого мини-приложения или игры. |
location
необязательное | string | Хеш — строка после символа # в URL, например vk.com/app12345#/path=start-screen. |
Результат
Проверить результат можно:
- •
Используя объект
Promise, который возвращается вызовомbridge.send(...). - •
С помощью событий
VKWebAppOpenAppResultиVKWebAppOpenAppFailed.
Подробнее о проверке результатов при вызовах VK Bridge.
Возможные ошибки:
- •
This action cannot be performed in the background, если мини-приложение или игра запущены в фоновом режиме.
Объект Promise
Если обращение к платформе прошло успешно, управление будет передано в then-обработчик объекта Promise. В качестве ответа платформа возвращает объект со следующим полем:
Поле | Тип | Описание |
|---|---|---|
result | boolean | true, если приложение открыто. |
Если при обращении к платформе произошла ошибка, управление передаётся в метод catch. В качестве ответа платформа возвращает объект с информацией об ошибке, общий для всех событий VK Bridge.
События
VKWebAppOpenAppResult
Сигнализирует, что приложение открыто. В обработчик события на стороне пользователя передаются следующие данные:
{
detail: {
type: "VKWebAppOpenAppResult",
data: {
result: true
}
}
}
Передаваемый объект подобен объекту, возвращаемому при успешном выполнении промиса.
VKWebAppOpenAppFailed
Информирует об ошибке, которая произошла при взаимодействии с платформой.
В обработчик события на стороне пользователя передаётся объект с информацией об ошибке, общий для всех методов VK Bridge.
Пример обработки событий
Подробнее — в разделе Обработка результата.