Как воспроизводить видео с SD-карты

Я создавал простое приложение, которое транслировало видео из сети, и я это сделал, но теперь я хочу изменить код, чтобы я мог воспроизводить видеофайлы с SDCard

исходный код:

Uri vidFile = Uri.parse("MY SITE HERE");
VideoView videoView = (VideoView) findViewById(R.id.VideoView);
videoView.setVideoURI(vidFile);
videoView.setMediaController(new MediaController(this));
videoView.start();

Поэтому, пожалуйста, помогите мне с изменением кода, чтобы он мог воспроизводить видео с моей мобильной карты памяти.

Ответы

Ответ 1

Метод videoView.setVideoURI(vidFile); должен быть заменен методом videoView.setVideoPath(path);. Здесь путь указывает путь к видеофайлу на SDCARD.

Этот путь можно легко получить, используя свойство MediaStore.Video.Media.DATA этого видеофайла или просто введя путь песни статически как /sdcard/songname.

Ответ 2

Uri vidFile = Uri.parse(
   Environment.getExternalStorageDirectory().getAbsolutePath()+"filename");
... 

остальная часть кода будет такой же.

Ответ 3

Вместо

videoView.setVideoUri(vidFile)

использовать

videoView.setVideoPath("/sdcard/SONG.").

Сообщите мне.

Ответ 5

Я также попробовал свой код и получил такое же сообщение об ошибке, но когда я попытался с видео-контуром без пробела в пути или имени, он работал хорошо. Просто попробуй. например, file path "/mnt/sdcard/Фильмы/Песня с длинным движением - Хилади 786 футов Akshay Kumar_Asin-YouTube.mp4" дал ошибку, но путь к файлу "/mnt/sdcard/Movies/Khiladi.mp4" работал хорошо.