Я создаю форму регистрации для мобильного приложения Android в Котлине с помощью Cognito, но у меня возникает проблема, когда я пытаюсь действительно зарегистрировать пользователя.
В документации мы можем увидеть этот примерJava-код для регистрации пользователя:
SignUpHandler signupCallback = new SignUpHandler() {
@Override
public void onSuccess(CognitoUser cognitoUser, boolean userConfirmed, CognitoUserCodeDeliveryDetails cognitoUserCodeDeliveryDetails) {
// Sign-up was successful
// Check if this user (cognitoUser) needs to be confirmed
if(!userConfirmed) {
// This user must be confirmed and a confirmation code was sent to the user
// cognitoUserCodeDeliveryDetails will indicate where the confirmation code was sent
// Get the confirmation code from user
}
else {
// The user has already been confirmed
}
}
@Override
public void onFailure(Exception exception) {
// Sign-up failed, check exception for the cause
}
};
userPool.signUpInBackground(userId, password, userAttributes, null, signupCallback);
А вот моя версия в Kotlin:
var signupCallback: SignUpHandler = object : SignUpHandler {
override fun onSuccess(cognitoUser: CognitoUser, userConfirmed: Boolean, cognitoUserCodeDeliveryDetails: CognitoUserCodeDeliveryDetails) {
// Sign-up was successful
// Check if this user (cognitoUser) needs to be confirmed
if (!userConfirmed) {
val intent = Intent(this@RegisterUsernameActivity, ConfirmEmailActivity::class.java)
startActivity(intent)
// This user must be confirmed and a confirmation code was sent to the user
// cognitoUserCodeDeliveryDetails will indicate where the confirmation code was sent
// Get the confirmation code from user
} else {
// The user has already been confirmed
}
}
override fun onFailure(exception: Exception) {
// Sign-up failed, check exception for the cause
Log.d("ERROR", exception.localizedMessage.toString())
}
}
userPool.signUpInBackground(username, password, userAttributes, null, signupCallback)
Когда я помещаю логи в случаях успеха и неудач, ничего не печатается, обратный вызов похож на полностьюигнорируются.У вас есть идеи, почему?
РЕДАКТИРОВАТЬ: только что попробовал версию Java, как она задокументирована, и такая же проблема возникает.