Можно отображать миниатюру видео с URL-адреса на Android 4 и выше?

Оба из них отлично работают на эмуляторе (2.3.3), но на реальном устройстве ( Nexus S с 4.1.2) изображение не отображается для миниатюры. Я также попытаюсь запустить его на Android 4 Emulator . Если я установил android:src умолчанию android:src для ImageView , он больше не отображается. Это заставляет меня думать, что он заменен, но ImageView пуст.

 public class MainActivity extends Activity { ImageView img; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); img = (ImageView)findViewById(R.id.img_thumbnail); new MyAsync().execute("http://commonsware.com/misc/test.mp4"); } //This version is still not working, but it's more readable (edited: Selvin). public class MyAsync extends AsyncTask<String, Void, Bitmap>{ @Override protected Bitmap doInBackground(String... objectURL) { //return ThumbnailUtils.createVideoThumbnail(objectURL[0], Thumbnails.MINI_KIND); return ThumbnailUtils.extractThumbnail(ThumbnailUtils.createVideoThumbnail(objectURL[0], Thumbnails.MINI_KIND), 100, 100); } @Override protected void onPostExecute(Bitmap result){ img.setImageBitmap(result); } } } 

Я знаю, что раньше задавался аналогичный вопрос. Отображение миниатюр видео в Android-устройстве с удаленного URL-адреса видео , но я уже пробовал этот и тот же результат.

Почему это не работает на устройстве и как оно работает?

Solutions Collecting From Web of "Можно отображать миниатюру видео с URL-адреса на Android 4 и выше?"

Используйте FFmpegMediaMetadataRetriever, чтобы извлечь миниатюру в нужном месте: FFmpegMediaMetadataRetriever

Это невозможно для Android и Java, и насколько я знаю какой-либо другой язык, не загружая все видео (исправьте меня, если я ошибаюсь). Не зря, что YouTube и другие крупные видеоуслуги предоставляют простой API для получения большого пальца видео. Поэтому, если сервер, на котором проживают видео, не поддерживает такой API, вы можете называть его неудачным.

Столкнулась с той же проблемой в 2.3, когда пыталась сделать эскиз из файла, который был расположен в папке кеша. Установка флажков разрешения решила проблему:

 videoFile.setReadable(true, false);