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

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

Шаг 1. Инициализация

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

    android {
          defaultConfig {
          manifestPlaceholders = [YANDEX_CLIENT_ID:"<идентификатор приложения_clientID>"]
       }
    }
    
  2. Для инициализации используйте код:

    val sdk = YandexAuthSdk.create(YandexAuthOptions(requireContext()))
    
    YandexAuthSdk sdk = YandexAuthSdk.create(new YandexAuthOptions(requireContext()));
    

Шаг 2. Авторизация

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

    val sdk = YandexAuthSdk.create(YandexAuthOptions(requireContext()))
    val launcher = registerForActivityResult(sdk.contract) { result -> handleResult(result) }
    val loginOptions = YandexAuthLoginOptions()
    launcher.launch(loginOptions)
    
    YandexAuthSdk sdk = YandexAuthSdk.create(new YandexAuthOptions(requireContext()));
    ActivityResultLauncher<YandexAuthLoginOptions> launcher =
       registerForActivityResult(sdk.getContract(), result -> handleResult(result));
    YandexAuthLoginOptions loginOptions = new YandexAuthLoginOptions();
    launcher.launch(loginOptions);
    
  2. Для обработки событий авторизации используйте код вида:

    private fun handleResult(result: YandexAuthResult) {
       when (result) {
          is YandexAuthResult.Success -> onSuccessAuth(result.token)
          is YandexAuthResult.Failure -> onProccessError(result.exception)
          YandexAuthResult.Cancelled -> onCancelled()
       }
    }
    
    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();
       }
    }
    

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

Для получения JSON Web Token используйте метод:

sdk.getJwt(yandexAuthToken)
sdk.getJwt(yandexAuthToken);

Полученный токен можно обменять на информацию о пользователе.

Предыдущая