Android Facebook Graph API未为封面照片返回null
我想挑选用户的封面照片用于Android应用程序。除了开放公共档案访问之外,我没有从Facebook获得任何其他批准 这是我现在使用的代码,请告诉我哪里出错了。目前,它正在返回一个空值Android Facebook Graph API未为封面照片返回null,android,facebook,facebook-graph-api,Android,Facebook,Facebook Graph Api,我想挑选用户的封面照片用于Android应用程序。除了开放公共档案访问之外,我没有从Facebook获得任何其他批准 这是我现在使用的代码,请告诉我哪里出错了。目前,它正在返回一个空值 String URL = "https://graph.facebook.com/" + THE_USER_ID + "?fields=cover&access_token=" + Utility.mFacebook.getAccessToken(); String finalCoverPhoto;
String URL = "https://graph.facebook.com/" + THE_USER_ID + "?fields=cover&access_token=" + Utility.mFacebook.getAccessToken();
String finalCoverPhoto;
try {
HttpClient hc = new DefaultHttpClient();
HttpGet get = new HttpGet(URL);
HttpResponse rp = hc.execute(get);
if (rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
String result = EntityUtils.toString(rp.getEntity());
JSONObject JODetails = new JSONObject(result);
if (JODetails.has("cover")) {
String getInitialCover = JODetails.getString("cover");
if (getInitialCover.equals("null")) {
finalCoverPhoto = null;
} else {
JSONObject JOCover = JODetails.optJSONObject("cover");
if (JOCover.has("source")) {
finalCoverPhoto = JOCover.getString("source");
} else {
finalCoverPhoto = null;
}
}
} else {
finalCoverPhoto = null;
}
} catch (Exception e) {
// TODO: handle exception
}
这是我用来取封面照片的代码 使用
GraphRequest
而不是DefaultHttpClient
Bundle params = new Bundle();
params.putString("fields", "cover");
new GraphRequest(token,
"me",
params,
HttpMethod.GET,
new GraphRequest.Callback() {
@Override
public void onCompleted(GraphResponse response) {
if (response != null) {
try {
JSONObject data = response.getJSONObject();
if (data.has("cover")) {
String coverPicUrl = data.getJSONObject("cover").getString("source");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}).executeAsync();
检查您是否正在获取coverPicUrl
的值
我希望有帮助