android:将电子邮件验证重新发送给Parse用户

时间:2014-05-06 18:31:23

标签: android parse-platform email-validation

我是新学习者,可以实现Parse用户数据mgt。我想重新发送电子邮件验证。经过研究,我得到了答案

“您可以使用相同的当前电子邮件值”更新“其用户对象上的电子邮件字段,然后重新保存。这将触发新的验证电子邮件。”

怎么做?

1 个答案:

答案 0 :(得分:4)

请注意,出于安全原因,您只能修改当前登录的ParseUser的属性。另外,请不要忘记在您的问题中调用用户的save方法之一。

ParseUser user = ParseUser.getCurrentUser();
user.setEmail(user.getEmail());
user.saveInBackground();

来自docs

  

具体来说,您无法调用任何保存或删除   除非使用经过身份验证的ParseUser获取,否则键入方法   方法,如logIn或signUp。这确保了只有用户才能   改变他们自己的数据。

所以你不需要"查询"对于用户应该已经登录的用户。

但是,如果您在用户未登录或全局登录时执行此操作,则可能需要查看使用允许管理功能的云功能。

为此,您可以参考引用thiscloud 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;
  }

希望它有所帮助。