![](/img/trans.png)
[英]Not getting Facebook Friends using Facebook sdk 3.1 for Android
[英]Facebook sdk getting friends using my app
我試圖讓我的朋友使用與我使用的相同的應用程序,我編寫了以下代碼:
new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/me/friends",
null,
HttpMethod.GET,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
/* handle the result */
Log.d("-@-", "graph response " + response.getJSONObject());
}
}
).executeAsync();
它在logcat中給出以下錯誤:
09-14 21:05:10.096: W/FacebookSDK.Request(12520): starting with Graph API v2.4, GET requests for //me/friends should contain an explicit "fields" parameter.
日志中的輸出也是:
09-14 21:05:10.706: D/-@-(12520): graph response {"summary":{"total_count":776},"data":[]}
有什么幫助嗎?
嘗試:
private void getUserFriendsFacebookIds() {
GraphRequest request = new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/me/friends",
null,
HttpMethod.GET,
new GraphRequest.Callback() {
public void onCompleted(GraphResponse response) {
/* handle the result */
Log.d("-@-", "graph response " + response.getJSONObject());
if (response.getError() != null) {
Log.e(TAG, "User data error: " + response.getError(), response.getError().getException());
} else {
setUserFriends(response.getRawResponse());
}
}
}
);
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name");
request.setParameters(parameters);
request.executeAsync();
}
private void setUserFriends(String json) {
FacebookFriendsInfo ff = new Gson().fromJson(json, FacebookFriendsInfo.class);
Log.i(TAG, "User friends: " + ff);
...
}
要解析響應,請嘗試使用GSON庫。
public class FacebookFriendsInfo {
public List<Friend> data = new ArrayList<Friend>();
public String getIds() {
StringBuilder sb = new StringBuilder();
for (Friend f : data) {
sb.append(String.format("%d,", f.id));
}
return sb.toString();
}
@Override
public String toString() {
return "FacebookFriendsInfo{" +
"data=" + data +
'}';
}
public class Friend {
public long id;
public String name;
@Override
public String toString() {
return "Friend{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}
}
}
嘗試使用以下API調用: me/friends?fields=name
請參閱v2.4的變更日志中的“聲明性字段”: https : //developers.facebook.com/docs/apps/changelog#v2_4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.