防止Parse中的重复用户

时间:2015-01-07 13:59:51

标签: android facebook facebook-graph-api parse-platform


我正在为android编写基于用户的应用程序 我有两种登录选择:
1.输入用户名和密码并发送电子邮件 2.通过Facebook app。

我想避免用户首先使用他的Facebook用户登录的状态,然后他将创建新用户,并在Facebook上注册他的电子邮件或反之。 我想让最初由Facebook注册的用户选择使用用户名和密码再次登录。

有没有办法确保呢?
感谢

1 个答案:

答案 0 :(得分:0)

我本可以建议您获取用户的电子邮件ID&密码从Facebook登录时通过Facebook登录,但无论如何都无法获得密码,因此无效。

您可以获取Facebook电子邮件ID并将其保存在SharedPreferences中。然后,当用户尝试使用电子邮件ID登录时,只需使用保存的电子邮件填充电子邮件字段,并要求用户输入密码。基本上你会要求他注册。 (使用那个电子邮件ID创建一个Parse帐户)。

  

如果用户将卸载该应用程序并稍后安装新应用程序   应用程序的副本,然后他将成功创建另一个用户   用他的电子邮件。

要解决此问题,您可以使用他的Facebook ID创建Parse帐户并设置默认密码(可以是任何内容,!@ 12345或仅仅是他的电子邮件ID)。然后在创建他的Parse帐户后,您只需使用Parse邮件系统向他发送邮件警报。这样他的帐户将在他使用Facebook登录时创建。

更新答案:

为什么不简单地浏览Parse Android Docs,它解释了如何将Facebook与Parse.com联系起来。

两者结合的基本示例如下:

ParseFacebookUtils.logIn(this, new LogInCallback() {
  @Override
  public void done(ParseUser user, ParseException err) {
    if (user == null) {
      Log.d("MyApp", "Uh oh. The user cancelled the Facebook login.");
    } else if (user.isNew()) {
      Log.d("MyApp", "User signed up and logged in through Facebook!");
    } else {
      Log.d("MyApp", "User logged in through Facebook!");
    }
  }
});

您可以浏览详细版本here