---
metadata:
  - name: generator
    content: Diplodoc Platform v5.44.0
alternate:
  - https://yandex.com/dev/id/doc/en/mobileauthsdk/android/archive/3.1.0/sdk-android-use.md
  - https://yandex.com/dev/id/doc/ru/mobileauthsdk/android/archive/3.1.0/sdk-android-use.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/id/doc/ru/llms.txt

# Использование

Для получения токенов выполните следующие действия:

## Шаг 1. Инициализация {#initialisation}

1. В `build.gradle` вашего приложения добавьте код:

   ```java
   android {
         defaultConfig {
         manifestPlaceholders = [YANDEX_CLIENT_ID:"<идентификатор приложения_clientID>"]
      }
   }
   ```

   * Идентификатор приложения **Client ID** доступен в [свойствах приложения](https://yandex.com/dev/id/doc/ru/register-client.md#app-params).

1. Для инициализации используйте код:

   {% list tabs group=kotlin-java %}

   - Kotlin

      ```java
      val sdk = YandexAuthSdk.create(YandexAuthOptions(requireContext()))
      ```

   - Java

      ```java
      YandexAuthSdk sdk = YandexAuthSdk.create(new YandexAuthOptions(requireContext()));
      ```

   {% endlist %}


## Шаг 2. Авторизация {#authorization}

1. Запустите авторизацию:

   {% list tabs group=kotlin-java %}

   - Kotlin

      ```java
      val sdk = YandexAuthSdk.create(YandexAuthOptions(requireContext()))
      val launcher = registerForActivityResult(sdk.contract) { result -> handleResult(result) }
      val loginOptions = YandexAuthLoginOptions()
      launcher.launch(loginOptions)
      ```

   - Java

      ```java
      YandexAuthSdk sdk = YandexAuthSdk.create(new YandexAuthOptions(requireContext()));
      ActivityResultLauncher<YandexAuthLoginOptions> launcher =
         registerForActivityResult(sdk.getContract(), result -> handleResult(result));
      YandexAuthLoginOptions loginOptions = new YandexAuthLoginOptions();
      launcher.launch(loginOptions);
      ```

   {% endlist %}

2. Для обработки событий авторизации используйте код вида:

   {% list tabs group=kotlin-java %}

   - Kotlin

      ```java
      private fun handleResult(result: YandexAuthResult) {
         when (result) {
            is YandexAuthResult.Success -> onSuccessAuth(result.token)
            is YandexAuthResult.Failure -> onProccessError(result.exception)
            YandexAuthResult.Cancelled -> onCancelled()
         }
      }
      ```

   - Java

      ```java
      private void handleResult(YandexAuthResult result) {
         if (result instanceof YandexAuthResult.Success) {
            onSuccessAuth(((YandexAuthResult.Success) result).getToken());
         } else if (result instanceof YandexAuthResult.Failure) {
            onProccessError(((YandexAuthResult.Failure) result).getException());
         } else {
            onCancelled();
         }
      }
      ```

   {% endlist %}

## Шаг 3. Получение JSON Web Token {#jwt}

Для получения [JSON Web Token](https://yandex.com/dev/id/doc/ru/tokens/jwt.md) используйте метод:

{% list tabs group=kotlin-java %}

- Kotlin

   ```java
   sdk.getJwt(yandexAuthToken)
   ```

- Java

   ```java
   sdk.getJwt(yandexAuthToken);
   ```

{% endlist %}


## Шаг 4. Получение информации о пользователе {#user-info}

Полученный токен можно обменять на [информацию о пользователе](https://yandex.com/dev/id/doc/ru/user-information.md).

## Полезные ссылки {#useful-links}

* [Обмен токена на информацию о пользователе](https://yandex.com/dev/id/doc/ru/user-information.md)
* [Справочник функций](https://yandex.com/dev/id/doc/ru/mobileauthsdk/android/archive/3.1.0/sdk-android-methods.md)
* [Коды ошибок](https://yandex.com/dev/id/doc/ru/mobileauthsdk/android/archive/3.1.0/sdk-android-errors.md)
