Параметры запуска в Одноклассниках
При старте приложения в Одноклассниках платформа передаёт ему дополнительные параметры с информацией о пользователе и источнике запуска. Значения передаются как URL-параметры по адресу, указанному в настройках игры или приложения.
Чтобы передать параметры, укажите их в URL после символа ?, например https://my-app.com/start?param1=value1.
Чтобы получить параметры запуска в коде приложения на стороне пользователя, воспользуйтесь одним из способов:
- •Извлеките значение свойства
hrefобъектаwindow.location. - •Вызовите событие
VKWebAppGetLaunchParams.
Подпись параметров
Чтобы защититься от подмены значений возможной утечки данных, используйте подпись параметров. Подробности — в разделе Подпись параметров запуска.
Параметры
Параметр | Тип | Описание |
|---|---|---|
sign | string | base64-строка — подпись параметров запуска. Используется для обнаружения подмены параметров третьими лицами. Подробнее — в разделе Подпись параметров запуска. |
vk_access_token_settings | string | Список прав доступа пользователя, который запустил приложение. Каждое значение в списке соответствует области данных пользователя, к которой можно получить доступ. Значения в списке разделены запятыми, например phone_number,email,geo_data. Полный список разрешений — в документации Одноклассников в разделе Разрешения для приложения. |
vk_app_id | integer | Идентификатор связанного приложения ВКонтакте. |
vk_are_pushes_enabled | integer | Включены ли у пользователя оповещения от приложения ВКонтакте. |
vk_ok_app_id | integer | Идентификатор приложения в Одноклассниках. |
vk_are_notifications_enabled | integer | Информация о разрешённых уведомлениях от приложения:
• 0 — отправка уведомлений запрещена.
• 1 — отправка уведомлений разрешена. |
vk_client | string | Идентификатор площадки запуска приложения. Для Одноклассников всегда ok. |
vk_is_app_user | integer | Информация о том, установил ли пользователь приложение :
• 0 — приложение не установлено.
• 1 — приложение установлено.
После того как пользователь впервые запустил приложение, они считаются установленными. |
vk_language | string | Язык пользовательского интерфейса приложения. |
vk_platform | string | Платформа, на которой было запущено приложение:
• desktop_web_ok — десктопная версия сайта Одноклассники (ok.ru).
• mobile_android_ok — мобильное приложение Одноклассники для Android.
• mobile_iphone_ok — мобильное приложение Одноклассники для iOS.
• mobile_web_ok — мобильная версия сайта Одноклассники (m.ok.ru). |
vk_ref | string | Источник запуска приложения ВКонтакте. Для игр и мини-приложений есть свой возможный список значений:
• Список значений для игр
• Список значений для мини-приложений |
vk_ok_ref | string | Источник запуска приложения в Одноклассниках. Полный список значений — в документации Одноклассников в разделе Список возможных мест перехода в игру. |
vk_ts | integer | Время генерации подписи параметров запуска. Подпись передаётся в параметре sign. |
vk_user_id | integer | Идентификатор VK ID пользователя, который запустил приложение. |
vk_ok_user_id | integer | Идентификатор пользователя Одноклассников, который запустил приложение. |
initial_id | integer | Служебный идентификатор пользователя, который запустил приложение. Параметр initial_id используется для сохранения прогресса, если у пользователя нет привязанного профиля VK ID. |
vk_original_vk_id | integer | Значение initial_id. Если у initial_id нет значения, то параметр принимает значение vk_user_id. Если у vk_user_id также нет значения, то initial_id принимает значение vk_ok_user_id. |
Параметры vk_user_id, vk_ok_user_id, vk_original_vk_id используются для авторизации пользователя в приложении. Чтобы проверить подлинность полученных данных, вычислите подпись и сравните с полученным значением параметра sign.
Передача произвольных параметров
При необходимости вы можете передавать произвольные параметры в приложение.
Запуск по прямой ссылке
При запуске приложения по прямой ссылке укажите параметры после символа # в адресной строке, например:
https://vk.com/app1234567#param1=12345
Символы после # будут переданы приложению в URL-параметре hash. Этот параметр всегда идёт последним среди остальных передаваемых параметров. Все символы после него являются символами, которые были указаны после # в URL приложения.
Получить параметры можно и с помощью свойства hash объекта window.location. Для отслеживания изменений этого значения в приложении используйте события VKWebAppLocationChanged и VKWebAppChangeFragment библиотеки VK Bridge.
Использование знака вопроса (?) для передачи параметров при запуске по прямой ссылке не работает.
Параметры запуска в настройках приложения
Чтобы указать параметры запуска в настройках приложения, добавьте в URL знак вопроса и параметры, например:
https://my-game.example.com/start-page?param1=12345
Получить эти параметры вы можете так же, как и обычные параметры веб-страниц, например с помощью свойства window.location.search или с помощью события VKWebAppGetLaunchParams.
Использовать символы # в URL-адресах, которые указываются в настройках приложения, нельзя.
Материалы по теме
- •
- •