我使用以下FQL从Facebook获得生日(我知道teh api已经改变了)但是我现在想继续这样做:
String fqlQuery = "{" +
"'friends':'SELECT uid2 FROM friend WHERE uid1 = me()'," +
"'friendinfo':'SELECT uid, name,pic_square, birthday FROM user WHERE uid IN" +
"(SELECT uid2 FROM #friends) AND birthday'"+
"}";
如何修改此查询以便我可以获取用户电子邮件ID(而不是朋友)
答案 0 :(得分:1)
https://developers.facebook.com/docs/graph-api/reference/v2.2/user
使用“email”权限授权用户,并使用Graph API调用/me
以获取用户的电子邮件。使用Graph API更容易,忘了FQL。 Android的代码示例可以在我发布的参考页面的“阅读”部分找到。
顺便说一句,如果你想收到朋友的电子邮件:这根本不可能,即使是旧的API。您不会以任何方式使用这些电子邮件,因此收到朋友的电子邮件毫无意义。
答案 1 :(得分:0)
我想知道有多少"朋友的生日提醒"应用程序在那里... @luschn是对的。我不明白你想要查询什么。通过引入Graph API v2.0,friends_*
权限已被撤销。
FQL将在2016年8月7日之前提供,但前提是您拥有< = v2.0 app。
FQL将是
String fqlQuery = "{" +
"'email':'SELECT uid, email FROM user WHERE uid = me()'," +
"'friendinfo':'SELECT uid, name,pic_square, birthday FROM user WHERE uid IN (SELECT uid2 FROM SELECT uid2 FROM friend WHERE uid1 = me()) AND birthday'"+
"}";
这实际上只适用于将于2015年4月30日停止运行的v1.0应用程序。