我正在尝试通过 intent 播放存储在 android 内存中的视频文件。文件存在于那里,但是当我尝试通过 Intent 播放它们时,它会根据设备给我错误“不支持媒体文件”或“无法播放视频”。我找不到我哪里错了。这是我的代码
File mydir = activity.getDir("Videos", Context.MODE_PRIVATE);
File fileWithinMyDir = new File(mydir, filename);
String videoResource = fileWithinMyDir.getPath();
Uri intentUri = Uri.parse(videoResource);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(intentUri, "video/mp4");
startActivity(intent);
我不知道我哪里错了,我该怎么办。任何帮助将非常感激。谢谢:)
最佳答案
感谢各位 friend 的参与,非常感谢你们的努力。我找到了我的问题的解决方案。播放前需要设置file read true。
fileWithinMyDir.setReadable(true, false);
现在这里是从 android 的内部存储播放 mp4 视频的完整 Intent 代码。
File mydir = activity.getDir("Videos", Context.MODE_PRIVATE);
File fileWithinMyDir = new File(mydir, headingsList.get(mPosition));
fileWithinMyDir.setReadable(true, false);
String videoResource = fileWithinMyDir.getPath();
Uri intentUri = Uri.fromFile(new File(videoResource));
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(intentUri, "video/mp4");
startActivity(intent);
关于android - 从安卓内部存储播放视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27165269/