ym88659208ym87991671
Быстрый старт подключения Android SDK Сбер ID | Документация для разработчиков

Быстрый старт подключения Android SDK Сбер ID

Обновлено 30 января 2026

Страница быстрого старта предназначена для краткого описания основных шагов интеграции и поможет вам быстро запустить авторизацию через Сбер ID в вашем приложении. Здесь приведен только необходимый минимум действий, без углубления в детали. За подробным описанием всех параметров, сценариев и примеров кода обратитесь к полной документации по SDK.

1. Подключение

  1. Добавьте репозиторий:
repositories {
mavenCentral()
}
  1. Подключите последнюю версию SIDSDK_CORE:
implementation("io.github.sid-sdk:SIDSDK_CORE:1.1.0")

2. Инициализация и настройка SDK

При запуске приложения в Application вызывите метод SID.Initializer.initialize(), далее примените настройки SID.Settings.setMainSettings.


class App : Application() {

override fun onCreate() {
super.onCreate()
// 1. Инициализации SDK
SID.Initializer.initialize(application = this)
// 2. Настройка основных параметров в SIDSDK_CORE
SID.Settings.setMainSettings(clientID = "ваш_clientID")
...
}

3. Отображение кнопки

AndroidView(
factory = { context ->
SIDButton(
context = context,
sidButtonModel = SIDButtonModel(
width = 300,
height = 60,
cornerRadius = 4,
)
)
},
modifier = Modifier.wrapContentSize(),
)

4. Сформировать запрос и запустить авторизацию

//Создание параметров для поддержки протокола PKCE.
val codeVerifier = PkceUtils.generateRandomCodeVerifier(SecureRandom())
val codeChallenge = PkceUtils.deriveCodeVerifierChallenge(codeVerifier)

//Создание Uri с параметрами для аутентификации, все значения нужно поменять на свои, тут указаны примеры
val uri = SID.Login.createUriForLogin(
scope = "добавьте все необходимые вам scope",
state = "random_state",
nonce = "random_nonce",
redirectUri = "partner: //redirect",
codeChallenge = codeChallenge,
codeChallengeMethod = PkceUtils.getCodeChallengeMethod()
)

//Запуск аутентификации по Сбер ID, первым параметром нужно передать контекст
SID.Login.loginWithID(this, uri)

5. Получение ответа от Сбер ID

5.1 Добавьте обработку диплинка для вашей активити:

<activity android:name=".MainActivity"
android:exported="true"
android:launchMode="singleTop"> //для обработки deeplink в той же activity
<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:host="redirect"
android:scheme="partner" />
</intent-filter>
</activity>

5.2 Обработку диплинка для вашей активити:

//В методе onNewIntent, если применить для activity android:launchMode="singleTop"
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
val resultModel = SID.Login.getIDAuthResult(intent)
if (resultModel.isSuccess == true) {
// Отправьте result.authCode, resultModel.state, resultModel.nonce и codeVerifier (см шаг 4) на свой бэк для окончания авторизации
} else {
// Ошибка, отобразите пользователю, что вход не получился
}
}

6. Завершение работы на клиенте

После получения authCode, state, nonce и codeVerifier отправьте их на ваш бэкенд. Бэкенд по протоколу OAuth 2.0 + PKCE обменивает authCode на токены и создает сессию пользователя. На стороне мобильного приложения дополнительных действий не требуется.

Заметили ошибку?

Выделите текст и нажмите Ctrl + Enter, чтобы сообщить нам о ней

ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера.