Как Получить Четкое Изображение С 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 ответ:
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, Я подозреваю, тоже. Они, как правило, приходят из сообщений, которыми делятся пользователи с других веб-сайтов.