У меня следующая проблема: мне нужно получить аватар пользователя от fb.Вот как я это делаю:
GraphRequest request = GraphRequest.newGraphPathRequest(
accessToken,
"/"+USER_ID+"/picture",
response -> {
JSONObject jsonObject = response.getJSONObject();
try {
JSONObject data = jsonObject.getJSONObject("data");
String url = data.getString("url");
Glide.with(getContext()).load(Uri.parse(url)).into(avatar);
} catch (JSONException e) {
e.printStackTrace();
}
});
request.executeAsync();
Когда я запускаю приложение, я ловлю JSONException:
W / System.err: at org.json.JSONObject.getJSONObject(JSONObject.java:612) в com.mikhailovskii.trakttv.ui.profile.ProfileFragment.lambda $ onCreateView $ 1 $ ProfileFragment (ProfileFragment.java:60) в com.mikhailovskii.trakttv.ui.profile .- $$ Lambda $ Profile$ opSQfyBaYXGAS004ZXJX6UymkGE.onCompleted (неизвестный источник: 4) в com.facebook.GraphRequest $ 5.run (GraphRequest.java:1395)
Вот JSON, который я должен получить:
{
"data": {
"height": 50,
"is_silhouette": true,
"url": "https://scontent.xx.fbcdn.net/v/t1.0-1/c15.0.50.50a/p50x50/10354686_10150004552801856_220367501106153455_n.jpg?_nc_cat=1&_nc_ht=scontent.xx&oh=60206c93f484956b6672f23d36e5db8c&oe=5D54D1E8",
"width": 50
}
}
Пока я читаю, нет необходимости получать какие-либо разрешения для получения изображения.Я получаю код ошибки 200, и это означает, что Permissions error
.Итак, почему эта проблема возникает?