我已经下载了facebook-android-sdk-3.14.1.zip,并试图让这些示例正常运行。我陷入了永远不会返回朋友列表的FriendPickerFragment。我可以登录Facebook ok(再次使用Facebook代码),使用'Scrumptious'示例和我的版本来跟随https://developers.facebook.com/docs/android/getting-started
我发现我的请求仅限于公开个人资料许可,例如
{Session state:OPENED, token:{AccessToken token:ACCESS_TOKEN_REMOVED permissions:[public_profile]}, appId:520510648055719}
我从Facebook friend picker SDK sample not working Android获取了代码,这将添加user_friends权限,并看到Session现在是:
{Session state:OPENED, token:{AccessToken token:ACCESS_TOKEN_REMOVED permissions:[public_profile, basic_info, user_friends]}, appId:520510648055719}
当我将代码追溯到RequestAsyncTask.doInBackground时,请求的值在:
@Override
protected List<Response> doInBackground(Void... params) {
try {
if (connection == null) {
return requests.executeAndWait();
} else {
return Request.executeConnectionAndWait(connection, requests);
}
} catch (Exception e) {
exception = e;
return null;
}
}
是
{Request: session: {Session state:OPENED, token:{AccessToken token:ACCESS_TOKEN_REMOVED permissions:[public_profile, basic_info, user_friends]}, appId:520510648055719}, graphPath: me/friends, graphObject: null, restMethod: null, httpMethod: GET, parameters: Bundle[{fields=id,name,picture.height(75).width(75)}]}
我在onPostExecute(列表结果)中看到了响应:
[{Response: responseCode: 200, graphObject: GraphObject{graphObjectClass=GraphObject, state={"data":[]}}, error: null, isFromCache:true}]
我之前是否需要先解决一些缓存问题?如果是这样,我该怎么做?
我读过Facebook最近改变了安全性。我创建了我的Facebook TestUI'app'并输入了hashKey(我认为一切正常,因为我可以成功登录Facebook)
我还应该关注其他什么吗?
寻找任何和所有的智慧。
由于
埃里克
答案 0 :(得分:1)
使用Graph Search v2.0,对用户朋友的请求只会返回同时使用您的应用的朋友列表(包括示例),并且必须作为特殊权限请求user_friends权限。虽然您可以使用以下内容搜索“taggable_friends”之类的内容,但似乎没有真正解决此问题的方法:
new Request(
session,
"/me/taggable_friends", //instead of "/me/friends"
null,
HttpMethod.GET,
new Request.Callback() {
public void onCompleted(Response response) {
/* handle the result */
}
}).executeAsync();
来自Facebook Graph Reference的。