Android:如何删除cognito中的非授权用户?

时间:2017-01-03 21:05:18

标签: android amazon-web-services aws-sdk amazon-cognito aws-cognito

所以我有这个确认活动。在活动中,我有两个按钮(提交和重新发送代码)。当您输入通过电子邮件或电话号码通过cognito获得的代码时,按下提交按钮。然后按"重新发送"当您没有收到任何代码并且认知重新发送验证码时。

问题:

是否有一行代码可以通过android重新发送验证码给aws cognito?

如果不是:

目前,我有这行代码:

cognitoUser.deleteUser(handler);

然后,我会在cognito中重新创建用户。

  userPool.signUpInBackground(username, password, userAttributes, null, signupCallback);

但是当我尝试删除用户时抛出的异常就是user is not authorized。所以我无法删除用户。

我如何处理"重新发送代码"?对文档或代码行的引用会很有帮助!

1 个答案:

答案 0 :(得分:1)

您应该可以通过在cognitoUser上调用resendConfirmationCodeInBackground来重新发送确认代码(如果我们正在讨论注册确认代码)

https://github.com/awslabs/aws-sdk-android-samples/blob/8957e9402cf7490bfa9c3939eabc92f1b7d4572e/AmazonCognitoYourUserPoolsDemo/app/src/main/java/com/amazonaws/youruserpools/SignUpConfirm.java#L199

deleteUser是经过身份验证的操作,因此您需要在调用deleteUser之前先对用户进行身份验证。

如果您正在讨论属性验证代码,则调用getUserAttributeVerificationCode将发送代码,verifyUserAttribute将验证发送的代码。