我已经玩了很长时间了。我无法理解为什么我的Android应用程序无法找到我的文件/res/raw/video.mp4。我在API 15上,手机是最新的v4.0.3。
目前测试代码如下:
String file = "android.resource://" + getPackageName() + "/" + R.raw.movie;
File f = new File(file);
message = f.exists() ? "file exists" : "file missing";
到目前为止,我尝试过的所有组合都会导致消息字符串返回为“文件丢失”。从资源访问文件的正确方法是什么?尝试了显而易见的“/res/raw/video.mp4”等,但都失败了。
答案 0 :(得分:3)
假设您要打开一个流来处理该文件,您应该这样做:
InputStream raw = getResources().openRawResource(R.raw.movie);
修改强>
好的,既然我确切地知道你想要什么,我就有坏消息。不太可能。
请参阅此SO question
基本上你需要将资源从资源复制到你可以获得的地方,如SD卡或内部存储。
答案 1 :(得分:0)
String url = "file:///android_asset/raw/filename.jpg
“;