我正在创建用于播放视频的简单 Android 应用。
1 DCIM/folder/test.mp4 - 视频根本无法播放
2 DCIM/test.mp4 - 完美运行(播放视频)
Intent intent = getIntent();
String videoPath = intent.getStringExtra("videoPath");
player = (EasyVideoPlayer) findViewById(R.id.player);
assert player != null;
player.setCallback(this);
player.setSource(Uri.parse(videoPath));
很高兴收到任何建议和好的例子。
谢谢
最佳答案
/storage/emulated/0/DCIM/D:T:21 July 2017/T__4__P__3.mp4
不是有效的 Uri
。它缺少方案并且有空格。
如果你打算使用 Uri.parse()
,你必须使用 Uri
的有效字符串表示,一个带有方案(例如,file://
) 并转换了空格(例如,%20
)。
处理本地文件时,通常使用 Uri.fromFile()
更安全,您已在其中创建了指向正确位置的 File
。除此之外,您可以检查文件是否存在。使用外部存储时,用户可以随时删除文件,因此您应该在尝试播放之前确认它的存在。 Uri.fromFile()
,AFAIK,将为您转换路径中的空格,并自动设置 file
方案。
关于android - 如何播放 DCIM 文件夹中的 mp4 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45258581/