1
Вот мой код:java.lang.RuntimeException: setDataSource failed: status = 0xFFFFFFED в android?
MediaMetadataRetriever metadataRetriever;
metadataRetriever = new MediaMetadataRetriever();
metadataRetriever.setDataSource(mediaFile.getAbsolutePath());
я получаю исключение, как это:
E/AndroidRuntime(3247): Caused by: java.lang.RuntimeException: setDataSource failed: status = 0xFFFFFFED
E/AndroidRuntime(3247): at android.media.MediaMetadataRetriever.setDataSource(Native Method)
E/AndroidRuntime(3247): at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:70)
E/AndroidRuntime(3247): at com.skyworth.tvfileexplorer.utils.FileUtils.getPreview(FileUtils.java:544)
E/AndroidRuntime(3247): at com.skyworth.tvfileexplorer.app.folders.CardPreviewer.doInBackground(CardPreviewer.java:33)
E/AndroidRuntime(3247): at com.skyworth.tvfileexplorer.app.folders.CardPreviewer.doInBackground(CardPreviewer.java:13)
Что разрешает mediaFile.getAbsolutePath()? –
@WilliamSeemann mediaFile.getAbsolutePath() просто возвращает путь к файлу, например: /storage/emulated/0/Movies/test.mp4. Я думаю, что знаю проблему, потому что 'setDataSource' принимает' Uri' как параметр вместо 'file path'. Но как я могу получить uri из медиафайла? – roger
setDataSource требует протокола. Просто добавьте «file: //» в начало пути. –