1

大家好,提前感谢。

经过一整天的尝试和搜索为什么视频在带有 webview 的 html 中加载或直接在带有 VideoView 的 .mp4 中加载后,我发现了问题所在。

显然,内部存储中的文件只有应用程序权限,但 MediaPlayer 或其他外部对象没有权限。这是正确的吗?如果我将相同的视频放在 res/raw 中,它可以毫无问题地播放。

好的。我需要我的文件在内部存储中,我从互联网 .zip 中获取文件,我在带有路径分隔符的位置解压缩,因为它是一个完整的结构。

所以我一直在寻找和尝试,但我找不到如何做到这一点,因为如果我尝试授予文件权限,如果我的设备,并且它不是,植根,我只是发现可以做,context.openFileOutput(filePath, Context.MODE_WORLD_READABLE)但这给了我一个例外,因为有路径分隔符,我无法理解这有什么问题......问题是我无法尝试当我解压缩文件时,在其他未来时刻都不会导致路径分隔符......怎么能我将全局权限设置为带有路径分隔符的内部文件?

或者我能做什么?问题是我需要让 webview 加载一个带有路径分隔符的同一文件夹中的所有图片和视频的 html .....在内部存储中是不可能的?

真的谢谢大家,任何帮助将不胜感激..

4

2 回答 2

0

我遇到了完全相同的问题。ImageView这特别麻烦,因为我在从内部存储中查看图像时没有类似的问题。

有两种方法可以解决,具体取决于您的应用程序的要求:

  1. 内容提供者

  2. 外部存储中的临时文件

    这对我来说是最好和最简单的。我只是将视频文件复制到外部存储中(它足够小,如果它被丢弃在外部存储中也不会那么敏感),播放它,当我完成播放时(活动结束)我删除了外部文件。容易小便。

于 2014-03-17T23:19:18.207 回答
0

我会使用外部存储并在应用程序之前将读取权限添加到清单中:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
<application
于 2015-10-06T02:51:01.950 回答