2014-09-28 105 views
0

我正在用Facebook登录构建一个android应用程序,一旦登录,它就会将信息从Facebook保存到像Facebook ID,姓名和个人资料图片一样的Parse中。有没有办法让一个专栏唯一,以便它只能有一种FB ID?或者检查我的用户表中是否存在FB ID?我知道这可能看起来像一个非常普遍的要求,但我一直在谷歌搜索几个小时,并找不到任何具体的解决方案..防止Parse.com上的重复条目?

回答

1

我已经遇到了iOS的这个问题,似乎Android可以解决以同样的方式。 所以,你可以用解析功能

ParseFacebookUtils.logIn(String facebookId, String accessToken, Date expirationDate, LogInCallback callback) 

依赖于Facebook的应用程序混合FB API可以获取facebookId的accessToken(我认为这对于EXPIRATIONDATE你可以设置一个远日期,像我所于iOS完成)

另一种解决方案是:

ParseFacebookUtils.logIn(Arrays.asList(Permissions.User.EMAIL), 
        this, new LogInCallback() { 
         @Override 
         public void done(ParseUser user, ParseException err) { 
          Do your stuff... 
         } 
        }); 

它会自动检测用户是否已经在_User表中存在该用户名(我可以在iOS上确认这一点,你可以检查用户是否是新用户,或是否仍然存在user.isNew())。如果你需要你也可以保存在一个分离的领域检索的facebookId,但我认为你可以避免它在这个范围

希望它有帮助