Android:AWS Amplify 用户状态未得到更新
Android: AWS Amplify User State is not getting update
我刚刚开始学习 AWS Amplify,我正在将它集成到我的 android 项目中以对用户进行身份验证。我已成功登录,但 UserState
仍然是 SIGNED_OUT
。
AWSMobileClient.getInstance().signIn(userName, password, null, callback)
回调代码片段
fun fetchAuthenticationCallBack(): Callback<SignInResult> {
return object : Callback<SignInResult> {
override fun onResult(result: SignInResult?) {
when (result?.signInState) {
SignInState.DONE -> {
// AWSMobileClient.getInstance().confirmSignIn()
Log.d(TAG, "LOGIN SUCCESS ${AWSMobileClient.getInstance().tokens.accessToken}")
}
SignInState.NEW_PASSWORD_REQUIRED -> {
Log.d(TAG, "NEW PASSWORD CHALLENGE")
}
else -> {
// Unsupported sign-in confirmation:
}
}
}
override fun onError(e: java.lang.Exception?) {
TODO("Not yet implemented")
}
}
}
我想获取 accessToken 但它给了我异常
Token does not support retrieving while user is SIGN_OUT
我在身份验证部分是否遗漏了什么?
如果以后有人遇到这个问题。
请检查您的 awsconfiguration.json
文件是否出了问题。在我的例子中 CognitoIdentity
凭据是错误的。我刚刚修复了 awsconfiguration.json
文件一切正常
我刚刚开始学习 AWS Amplify,我正在将它集成到我的 android 项目中以对用户进行身份验证。我已成功登录,但 UserState
仍然是 SIGNED_OUT
。
AWSMobileClient.getInstance().signIn(userName, password, null, callback)
回调代码片段
fun fetchAuthenticationCallBack(): Callback<SignInResult> {
return object : Callback<SignInResult> {
override fun onResult(result: SignInResult?) {
when (result?.signInState) {
SignInState.DONE -> {
// AWSMobileClient.getInstance().confirmSignIn()
Log.d(TAG, "LOGIN SUCCESS ${AWSMobileClient.getInstance().tokens.accessToken}")
}
SignInState.NEW_PASSWORD_REQUIRED -> {
Log.d(TAG, "NEW PASSWORD CHALLENGE")
}
else -> {
// Unsupported sign-in confirmation:
}
}
}
override fun onError(e: java.lang.Exception?) {
TODO("Not yet implemented")
}
}
}
我想获取 accessToken 但它给了我异常
Token does not support retrieving while user is SIGN_OUT
我在身份验证部分是否遗漏了什么?
如果以后有人遇到这个问题。
请检查您的 awsconfiguration.json
文件是否出了问题。在我的例子中 CognitoIdentity
凭据是错误的。我刚刚修复了 awsconfiguration.json
文件一切正常