我正在使用Facebook登录构建一个Android应用程序,一旦登录,它将保存从Facebook到Parse的信息,如Facebook ID,名称和个人资料图片。有没有办法使列唯一,以便它只能有1种FB ID?或检查我的用户表中是否存在FB ID?我知道这似乎是一个非常普遍的要求,但我一直在谷歌搜索几个小时,找不到任何具体的解决方案..
答案 0 :(得分:1)
我已经在iOS中遇到过这个问题,似乎Android可以用同样的方式解决。 因此,您可以将FB API与解析函数混合使用
ParseFacebookUtils.logIn(String facebookId, String accessToken, Date expirationDate, LogInCallback callback)
依靠facebook应用程序,你可以获得 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表中是否已存在具有该facebook ID的用户(我可以在iOS上确认这一点,您可以检查该用户是新用户还是仍然存在{ {1}})。如果您需要,您也可以将检索到的facebookId保存在一个单独的字段中,但我认为您可以避免使用此范围
希望有所帮助