Стара авторизація через VK SDK більше не підтримується — ВКонтакте перевела всі додатки на новий VKID SDK. Розробникам доводиться мігрувати, стикаючись із нюансами: налаштування PKCE, обробка deep link, отримання refresh токенів. Здавалося б, заміна одного SDK на інше, але на практиці виникають проблеми з URL Scheme, конфігурацією OneTap та серверною верифікацією. Якщо не врахувати всі деталі, авторизація може не працювати на частині пристроїв, а стори можуть відхилити збірку через невідповідність вимогам App Store Review Guidelines (Section 4.2) або Google Play Store. Наприклад, пропущений Intent Filter на Android або невірний redirect URI на iOS — і користувач бачить браузер поза додатком. За нашою статистикою, додатки з OneTap показують конверсію входу на 30% вищу, ніж із класичною формою. Ми підготували детальний гайд з інтеграції нового SDK на iOS та Android, щоб перехід пройшов безболісно.
Чому VK ID краще за старий VK SDK?
Новий SDK вирішує ключові проблеми старого:
- OneTap-авторизація: якщо на пристрої встановлено додаток ВКонтакте, користувач може увійти одним кліком без введення пароля. Конверсія авторизації зростає в середньому на 30%.
- Автоматичний refresh токенів: більше не потрібно писати власний механізм оновлення — SDK робить це сам. Економія часу розробки — до 40%.
- Покращена безпека: використовується PKCE-протокол, що виключає перехоплення коду авторизації.
Старий VKSdk deprecated, і ВКонтакте рекомендує повністю перейти на VKID. Ігнорування цієї вимоги може призвести до відмови в публікації оновлень у сторах.
| Характеристика | VKID | VK SDK (старий) |
|---|---|---|
| OneTap | Так | Ні |
| PKCE | Обов'язковий | Опціональний |
| Refresh токена | Автоматичний | Вручну |
| Підтримка | Актуальна | Deprecated |
| Сумісність з новими вимогами сторів | Так | Ні |
Як інтегрувати VKID на iOS?
Встановлення через Swift Package Manager:
https://github.com/VKCOM/vkid-ios-sdk Далі створюємо конфігурацію SDK:
let vkid = VKID(config: .init(appCredentials: .init(clientId: "YOUR_CLIENT_ID", clientSecret: "YOUR_CLIENT_SECRET"))) Для OneTap використовуйте OneTapBottomSheet. В Info.plist додайте URL Scheme vk{client_id} для редиректу. Після авторизації SDK повертає access token та user ID. Для отримання профілю викликайте VK API: users.get з полями photo_200,screen_name.
Як інтегрувати VKID на Android?
Додайте залежність у Gradle:
implementation "com.vk.id:vkid:latest" Налаштуйте Intent Filter в AndroidManifest.xml:
<intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="vk{client_id}" android:host="vk.com" android:pathPrefix="/blank.html" /> </intent-filter> Ініціалізація:
val vkid = VKID(config = VKIDConfig(clientId = "YOUR_CLIENT_ID", clientSecret = "YOUR_CLIENT_SECRET")) Для OneTap використовуйте OneTapButton в Compose. Після авторизації токен зберігається і автоматично оновлюється.
Основні кроки інтеграції
| Етап | Тривалість | Дії |
|---|---|---|
| Аналіз | 1 день | Перевірка поточної архітектури, визначення точок інтеграції |
| Налаштування SDK | 2-3 дні | Встановлення, конфігурація URL Scheme/Intent Filter, OneTap |
| Серверна верифікація | 1 день | Налаштування перевірки токенів через secure.checkToken |
| Тестування | 1-2 дні | Перевірка всіх сценаріїв: OneTap, браузерний flow, refresh, помилки |
| Деплой | 1 день | Підготовка збірок, code signing, відправка на модерацію |
Що входить у роботу з інтеграції VK ID
Ми надаємо повний цикл послуг:
- Аналіз поточної архітектури — оцінюємо, як зараз реалізована авторизація (якщо є) і що потрібно змінити.
- Інтеграція VKID SDK — налаштовуємо OneTap та браузерний flow на обидві платформи.
- Серверна верифікація — налаштовуємо перевірку токенів на бекенді через метод
secure.checkToken. - Документація — передаємо інструкції зі збірки, конфігурації та підтримки.
- Навчання команди — проводимо код-рев'ю та пояснюємо ключові моменти.
Процес роботи
- Аналітика — вивчаємо ваш додаток, визначаємо точки інтеграції.
- Проектування — розробляємо архітектуру авторизації з урахуванням поточного стеку.
- Інтеграція — встановлюємо та налаштовуємо VKID SDK на iOS та Android.
- Тестування — перевіряємо всі сценарії: OneTap, браузерний потік, refresh токена, обробку помилок.
- Деплой — готуємо збірки для App Store та Google Play з коректними provisioning profile та code signing.
Чек-лист перед деплоєм
- [ ] URL Scheme та Intent Filter налаштовані коректно
- [ ] PKCE увімкнено і працює
- [ ] Серверна верифікація токенів налаштована
- [ ] App Store Review Guidelines розділ 4.2 та 5.1 дотримані
- [ ] Google Play Console політики безпеки виконані
Типові помилки при інтеграції
- Невірно налаштований URL Scheme або Intent Filter — авторизація не повертається в додаток.
- Відсутність
client_secret— токен не оновлюється, сесія вичерпується. - Ігнорування PKCE — безпека знижена, можливе блокування додатка сторами.
- Неправильний запит до VK API — дані профілю не передаються.
Ми гарантуємо, що ваша інтеграція відповідатиме всім вимогам VKID SDK Documentation і пройде модерацію в стори. Досвід нашої команди — 5+ років у мобільній розробці та понад 20 проєктів з VK API. Отримайте безплатну консультацію та оцінку вашого проєкту — зв'яжіться з нами, щоб розпочати інтеграцію.







