FirebaseAuth android获取Facebook朋友列表

FirebaseAuth android get Facebook friends list

我在我的应用程序中使用Facebook登录。 用户登录后,我可以获取其基本的Facebook信息,例如显示名称,电子邮件和照片网址。
我想获取他们的Facebook朋友列表。 我想我可以用firebase"直接"获得它,但是我不记得怎么做,也找不到任何有关它的信息。 我想我必须首先告诉Firebase在人们使用Facebook登录时获取朋友列表,然后才能使用firebaseAuth.getCurrentUser()。getFriendList()之类的方法获取它。

您知道如何使用firebaseAuth获取Facebook朋友列表吗?

谢谢,

亚历克斯


这是可行的,但只有使用您的应用程序的朋友也可以。诀窍是将范围添加到您的登录方法。在Angular中看起来像这样

1
this.afAuth.auth.signInWithPopup(new firebase.auth.FacebookAuthProvider().addScope('user_friends'))

最后的范围就是诀窍。然后,您需要至少两个在Facebook上成为朋友的用户才能登录。您会注意到弹出窗口是不同的,因为它现在请求用户的朋友的许可。

该响应将包括一个访问令牌。然后,您可以使用该令牌来请求也在使用该应用的用户朋友,例如GET请求

1
https://graph.facebook.com/v2.11/{facebook_uid}/?fields=friends{name,id}&access_token={access_token}

注意:我使用的是特定版本,但是您应该将其更改为所需的任何版本。


通常无法从Facebook获取用户的所有朋友列表,他们几年前通过API v2.0简介删除了此选项...有关更多信息和有用建议,请点击这里

有一个称为Graph API的官方FB API,您在这里有一些关于朋友列表的文档

和Firebase ...好吧,这是Google的产品,与Facebook无关...您可能正在使用FB邮件地址在Firebase服务/数据库中创建帐户,但它仅保留此数据以及一些其他信息属性(如果已设置)(例如照片或可见名称)。

firebaseAuth.getCurrentUser()返回FirebaseUser对象,该对象具有以下方法-如您所见:logpass,名称,照片url和仅其他几种方法。没有获取好友列表的选项,因为没有设置好友列表的方法,也无法从FB lib / API获取此列表