Как Получить Четкое Изображение С FaceBook


Я использовал graph API JSON Response of Facebook Wall Post Images и дисплей в моем приложении я успешно получил его. Но изображения на стене выглядят очень размытыми, как решить? я использовал этот код для get wall picture

URL url=new URL(hashMap.get("picture_url"));
bitmap=BitmapFactory.decodeStream(url.openConnection().getInputStream());
((ImageView)view.findViewById(R.id.imageView_FullImage)).setImageBitmap(bitmap)
1 2

1 ответ:

API Facebook Graph, а также набор данных FQL всегда возвращает URL-адрес изображения миниатюры. Если вы посмотрите на URL, который он возвращает ,он будет иметь один из этих окончаний (прямо перед расширением изображения.формат JPG, .png, etc) _t., _a. . Например, если URL-адрес файла JPG, он может иметь окончание _t.jpg

Идея состоит в том, чтобыпоменять местами конец и выбрать нормальный размер для возвращаемого изображения. Для этого используйте приведенный ниже код, который заменит окончания с одним для изображений нормального размера (которые должны иметь _n.)

Кстати, я не думаю, что тег, который вы ищете, это picture_url . Это должно быть просто Изображение. Но независимо от этого, получите исходный URL, как показано ниже, замените окончания и затем передайте его в эту строку в коде:

// THIS SHOULD BE AFTER THE if....else code block
bitmap=BitmapFactory.decodeStream(url.openConnection().getInputStream());

Код для замены различных миниатюр изображений: кстати, это производственный код и работает отлично.

String PICTURE_URL;
String getPicture = JOFeeds.getString("picture");

if (getPicture.contains("_t.")) {
    PICTURE_URL = getPicture.replaceAll("_t.", "_n.");
} else if (getPicture.contains("_a.")) {
    PICTURE_URL = getPicture.replaceAll("_a.", "_n.");
} else if (getPicture.contains("_s.")) {
    PICTURE_URL = getPicture.replaceAll("_s.", "_n.");
} else if (getPicture.contains("_q.")) {
    PICTURE_URL = getPicture.replaceAll("_q.", "_n.");
}

Примечание: Однако в некоторых случаях, таких как предварительный просмотр видео или просмотр ссылок, он не всегда будет иметь более крупное изображение. Вы ничего не можете с этим поделать, и Facebook, Я подозреваю, тоже. Они, как правило, приходят из сообщений, которыми делятся пользователи с других веб-сайтов.