Android:播放私人应用程序文件中的视频

发布于 2024-12-09 16:32:50 字数 633 浏览 0 评论 0原文

我正在使用 videoView 来显示从服务器下载的视频。

如果我从 SD 卡播放视频,使用以下命令可以正常工作:

video.setVideoPath(Environment.getExternalStorageDirectory().getAbsolutePath() + "/test.mp4");

但就我而言,我不希望从 SD 卡播放视频,而是从应用程序的内部存储播放视频。在这种情况下,我找不到正确的路径...... 我认为它类似于 :

video.setVideoPath("test.mp4");

video.setVideoPath("file://test.mp4");

video.setVideoPath("data/data/com.myapp/file/test.mp4");

但它不​​起作用,并且视频视图在尝试播放视频时发送错误。

精确地说,文件本身下载得很好(两种方式),正如我使用 SD 卡和文件系统检查的那样(其大小没问题)。看来给出的路径是错误的。

有什么想法吗?

谢谢

I'm using a videoView to display a video that I downloaded from my server.

If I play the video from the sd card, it works fine using something like :

video.setVideoPath(Environment.getExternalStorageDirectory().getAbsolutePath() + "/test.mp4");

But in my case, I don't want the video to be played from the sdcard but from the internal storage of the application. In this case, I don't find the right path ...
I thought it was something like :

video.setVideoPath("test.mp4");

or

video.setVideoPath("file://test.mp4");

or

video.setVideoPath("data/data/com.myapp/file/test.mp4");

But it doesn't work and the video view sends an error while trying to play the video.

Juste a precision, the file itself is well downloaded (in both ways), as I checked using the sd card and the file system (its size is ok). It seems to be the path given that is wrong .

Any idea ?

thx

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

喜你已久 2024-12-16 16:32:50

如果您想播放应用程序内部存储中的视频,请使用以下代码行:

MediaPlayer mMediaPlayer = new MediaPlayer();
File file = new File("data/data/com.myapp/file/test.mp4");
        FileInputStream fis = new FileInputStream(file);
        FileDescriptor fd = fis.getFD();
        mMediaPlayer.setDataSource(fd);

这肯定会对您有所帮助。

If you want to play the video from the internal storage of the application, use the following lines of code :

MediaPlayer mMediaPlayer = new MediaPlayer();
File file = new File("data/data/com.myapp/file/test.mp4");
        FileInputStream fis = new FileInputStream(file);
        FileDescriptor fd = fis.getFD();
        mMediaPlayer.setDataSource(fd);

This will surely help you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文