Как войти в систему с помощью AWS Amplify на Android + Kotlin? - PullRequest
0 голосов
/ 19 января 2019

Я пытаюсь создать приложение для Android с экраном входа на Android в Kotlin, используя AWS Amplify, вот мой код входа:

AWSMobileClient.getInstance().signIn(username, password, null, object : Callback<SignInResult> {

        override fun onResult(signInResult: SignInResult) {
            runOnUiThread {
                Log.d("DEBUG", "Sign-in callback state: " + signInResult.signInState)
                when (signInResult.signInState) {
                    SignInState.DONE -> Log.d("DEBUG", "Sign-in done.")
                    SignInState.SMS_MFA -> Log.d("DEBUG", "Please confirm sign-in with SMS.")
                    SignInState.NEW_PASSWORD_REQUIRED -> Log.d("DEBUG", "Please confirm sign-in with new password.")
                    else -> Log.d("DEBUG", "Unsupported sign-in confirmation: " + signInResult.signInState)
                }
            }
        }

        override fun onError(e: Exception) {
            Log.e("DEBUG", "Sign-in error", e)
        }
    })

Я использовал документацию Amazon здесь , скопировал и вставил блок, найденный в главе «Вход в систему», в Android Studio, которая автоматически конвертировала код Java в Kotlin.

Используя журналы, я вижу, что мой код выше этого выполняется, когда я нажимаю кнопку входа в систему, но блок onResult никогда не вызывается. В журналах печатается только D/AWSMobileClient: Sending password. из AWS sdk.

Я помню, что этот код работал до рождественских каникул, поэтому я думаю, что это может быть изменение на стороне Amazon, но я ничего не нахожу в документации.

Ты хоть представляешь, что здесь не так?

...