首页 文章

Facebook移动应用程序登录是否返回Facebook Profiles ID(和电子邮件地址)?

提问于
浏览
0

我想允许用户在我的Android应用程序中通过Facebook登录 . 然后,我将Facebook登录名与我的数据库中的Facebook Profiles ID匹配,如果用户之前已通过我的网站在桌面浏览器中登录,则我已存储该帐户 .

因此,如果用户通过我的应用程序登录,我可能需要根据用户将其与我的数据库中的现有记录进行匹配 .

我正在读这个:https://developers.facebook.com/docs/facebook-login/android/v2.3

但是,我不确定是否通过此登录按钮可以检索登录用户的Facebook Profiles ID(最好也是电子邮件地址) .

2 回答

  • 0

    是的,你可以得到两者 .

    您将收到的ID将是一个应用范围的用户ID . 这意味着每个App-User组合都会产生不同(且唯一)的ID . 另有说明;如果您的数据库中有多个应用程序,则不能将每个新用户链接到现有用户 . 对于该用例,有Business Mappping API . 当您注册所有自己的应用程序时,这基本上是一个系统,然后您可以映射不同的ID . 但;在简单的用例中,只有一个应用程序,您总能获得一个ID . 但是,这不是正常的Facebook ID(并且没有办法检索它) .

    你可以使用the current profile来获得这个 . 这将为您提供Profile object,其中包含id,firstName,lastName,name等基本信息 .

    要获取用户的电子邮件地址,您需要申请email permission,您可以从app申请,无需提交审核 . 授予此权限后,您可以fetch user data使用您的应用 .

    请记住,并非所有用户都有电子邮件地址,而其他用户可能无法授予您检索权限 . 所以App-Scoped用户ID是最可靠的方式 .

  • 1

    是的,你会得到所需的 . 您可以访问图API,以便获取您有权访问的所有数据

相关问题