ym88659208ym87991671
Подключение Android SDK | Документация для разработчиков

Подключение Android SDK

Обновлено 26 июля 2023

Минимальная поддерживая версия Android: 21

Android SDK помогает реализовать получение кода авторизации (Auth Code) Сбер ID минимальными усилиями со стороны разработчика и в соответствии с утвержденными гайдами по отображению кнопки.

Подключение

Используя maven:

dependencies {
...
implementation 'io.github.sberid:SberIdSDK:2.4.1' // Версия может отличаться. Информацию об актуальной версии вы найдете в разделе «Файл Android SDK»
// зависимости для аналитики (см. Отправка аналитических событий)
// и androidx.browser:browser:1.3.0 больше не нужно подключать
...
}

Подключая aar файлом:

Добавьте файл .aar в папку libs вашего проекта: 

Скриншоти aar

Перейдите в build.gradle вашего модуля: 

Скриншот gradle

И добавьте зависимость в раздел dependencies:

dependencies {
...
implementation(name:'SberIdSDK', ext:'aar')
...
}

SDK реализована на языке Kotlin (версия 1.4.0), поэтому если в вашем проекте используется только Java и никакие дополнительные зависимости на Kotlin ранее не подключались, нужно добавить поддержку Kotlin (версия указана для примера, актуальна на момент написания документации):

dependencies {
...
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10")
...
}

Android Studio покажет предупреждение о том, что версия Kotlin Plugin (null) не соответствует версии подключенной библиотеки, но в данном случае подключение к проекту Kotlin Plugin не является обязательным. Все вызовы статических методов SDK в вашем Java-коде по примерам ниже необходимо выполнять через стандартный вспомогательный объект Companion, например:


SberIDLoginManager.Companion.SberIDBuilder sberIDBuilder = SberIDLoginManager.Companion.sberIDBuilder()

Перейдите в build.gradle вашего проекта:

Скриншот gradle

Добавьте зависимость:

allprojects {
repositories {
flatDir {
dirs 'libs'
}
}
}

Перейдите в settings.gradle вашего проекта:

Скриншот gradle 2

И подключите библиотеку к вашему проекту:


include ':SberIdSDK'

Поддержка Android 11+

Начиная с версии 1.3.1 SDK поддерживает определение видимости МП СБОЛ по требованиям, введенным в Андроид 11. Для возможности корректной сборки проекта необходимо, чтобы версия Android Gradle Plugin в вашем приложении была соответствующей. Подробнее про функционал видимости внешних пакетов можно ознакомиться в документации Google:

Если версия Android Gradle Plugin будет ниже требуемой, при сборке проекте будет возникать ошибка Android resource linking failed. Для поддержки работоспособности достаточно минорного обновления версии Android Gradle Plugin в зависимости от той, которая у вас используется сейчас, подробнее про версии плагина можно прочитать здесь:

Минимально допустимая версия Android Gradle Plugin, поддерживающая требования в Андроид 11 - 3.3.3. Минимально допустимая версия Gradle, поддерживающая эту версию плагина - 4.10.1.

Настройка подключения к стенду

Начиная с версии 2.4.0 для внутренних партнеров мы добавили возможность смены стендов внутри SDK, для тестирования на ИФТ и ПСИ стенде. Предворительно у вас должно быть настроена полная интеграция с тестовыми стендами, а так же вы как партнер должны быть добавлены на ваш стенд. Для этого можно написать в ваш чат поддержки Сбер ID (Ваш_продукт & Сбер ID) или на почту SberId@sber.ru

Для настройки стенда нужно передать в конструктор SberIDLoginManager тип стенда, для это нужно использовать Enum класс StandName:

    SberIDLoginManager(StandName.ESA_IFT) // по умолчанию StandName.PROM

Обратите внимание, стенды cloud и ЕСА отличаются.


/**
* Нестабильный стенд Сloud Сбер ID, на котором ведется разработка
*/
CLOUD_IFT,

/**
* Стабильный стенд Сloud Сбер ID, на котором ведется стабилизация
*/
CLOUD_PSI,

/**
* Нестабильный стенд ЕСА, на котором ведется разработка
*/
ESA_IFT,

/**
* Стабильный стенд ЕСА, на котором ведется стабилизация
*/
ESA_PSI,

/**
* Стенд по умолчанию, не имеет разбивки так как работает через конфиг файл.
* Сейчас оставляем самый популярный бэк
*/
PROM

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