我是新学习者,可以实现Parse用户数据mgt。我想重新发送电子邮件验证。经过研究,我得到了答案
“您可以使用相同的当前电子邮件值”更新“其用户对象上的电子邮件字段,然后重新保存。这将触发新的验证电子邮件。”
怎么做?
答案 0 :(得分:4)
请注意,出于安全原因,您只能修改当前登录的ParseUser
的属性。另外,请不要忘记在您的问题中调用用户的save
方法之一。
ParseUser user = ParseUser.getCurrentUser();
user.setEmail(user.getEmail());
user.saveInBackground();
来自docs
具体来说,您无法调用任何保存或删除 除非使用经过身份验证的ParseUser获取,否则键入方法 方法,如logIn或signUp。这确保了只有用户才能 改变他们自己的数据。
所以你不需要"查询"对于用户应该已经登录的用户。
但是,如果您在用户未登录或全局登录时执行此操作,则可能需要查看使用允许管理功能的云功能。
为此,您可以参考引用this的cloud code。我从来没有使用过Parse的那部分,所以如果那就是你所需要的,我就无法帮助你。
只是为了补充这个好的答案。
如果你是Android / Parse的新手,那么这也是一个很好的机会,也可以在后台学习如何做到这一点 - 让用户等待#34;那就是 .saveInBackground 。
private void resendEmail()
{
ParseUser user = ParseUser.getCurrentUser();
user.setEmail(user.getEmail());
... here, bring up a message saying 'we're contacting the cloud!'
user.saveInBackground(new SaveCallback()
{
public void done(ParseException e)
{
... here, get rid of that message
if (e == null)
{
Utils.Log("resendEmail no problem.");
... here, bring up a message like...
String un = ParseUser.getCurrentUser().getUsername();
"We have resent the validation email to " +un +". Please check your email!"
}
else
{
int errCodeSimple = e.getCode();
Utils.Log(", some problem: " + errCodeSimple);
... here, bring up a message like...
"We could not reach the internet! Try again later!"
}
}
});
}
最后,这是Android中一个惊人的相关技巧。当您创建一个帐户时,您想要检查它是否是一个有效的""电子邮件。这需要在iOS中使用18,000行代码,但在Android中只需一行代码。
maybeEmail = emailField.getText().toString();
if (!android.util.Patterns.EMAIL_ADDRESS.matcher(maybeEmail).matches())
{
userAlert("Please a valid email, buddy!!!");
return;
}
希望它有所帮助。