【问题标题】:android: Resend email verification to Parse userandroid:向 Parse 用户重新发送电子邮件验证
【发布时间】:2014-05-06 18:31:23
【问题描述】:

我是实施 Parse 用户数据管理的新手。我想重新发送电子邮件验证。经过研究,我得到了答案

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

怎么做?

【问题讨论】:

    标签: android parse-platform email-validation


    【解决方案1】:

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

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

    来自docs

    具体来说,您无法调用任何保存或删除 类型方法,除非 ParseUser 是使用经过身份验证的 方法,例如登录或注册。这确保只有用户可以 修改自己的数据。

    所以你不需要为用户“查询”,因为用户应该已经登录了。

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

    为此,您可以参考this,它指的是cloud code。我从来没有使用过 Parse 的那部分,所以如果你需要的话,我帮不上什么忙。


    只是为了补充这个很棒的答案。

    如果您是 Android/Parse 的新手,那么这是一个学习如何“在后台 - 让用户等待”的好机会。这就是 .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;
      }
    

    希望对某人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-18
      • 2020-08-06
      • 2018-08-14
      • 2021-05-12
      • 2017-09-09
      • 2019-10-29
      • 2019-05-11
      • 2016-02-16
      相关资源
      最近更新 更多