android – 如何设置MODE_WORLD_READABLE的文件权限

前端之家收集整理的这篇文章主要介绍了android – 如何设置MODE_WORLD_READABLE的文件权限前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在将音频文件下载到我的 Android应用程序缓存中,然后必须使用MediaPlayer访问该缓存.该文件的创建权限为-rw ——-(如Eclipse的文件资源管理器中所示).

使用这些权限,MediaPlayer无法访问音频文件.失败在logcat中显示为:

java.io.IOException: Prepare Failed.: status=0x1

我的应用针对API级别8.

如何设置下载的音频文件的权限以使其可由MediaPlayer读取?

顺便说一句,我正在创建文件

FileOutputStream out = new FileOutputStream(fRecording);

当我尝试将文件创建为MODE_WORLD_READABLE时,不会创建任何文件

FileOutputStream out = activity.openFileOutput(fRecording.getAbsolutePath(),Activity.MODE_WORLD_READABLE);

使用openFileOutput的logcat错误是:

java.lang.IllegalArgumentException: File /data/data/com.calltrunk.android/cache/727adda7-0ef1-490f-9853-fe13ad1e9416 contains a path separator

解决方法

>使用文件名和操作名调用openFileOutput()
模式.这将返回具有权限的FileOutputStream
MODE_WORLD_READABLE.
>使用write()写入文件.
>使用close()关闭流.

例如:( txt文件代码,在您的情况下,它的音频文件根据它进行更改)

String FILENAME = "hello_file";
String string = "hello world!";

FileOutputStream fos = openFileOutput(FILENAME,Context.MODE_WORLD_READABLE);
fos.write(string.getBytes());
fos.close();

猜你在找的Android相关文章