0
我想獲取一個URI到我的res/raw/
目錄中的資源。目標是將此URI提供給VideoView,但這有問題,我似乎無法用測試代碼打開該文件。通過URI打開Android資源文件引發FileNotFoundException
我有以下的測試代碼:
String uri = "android.resource://com.my.package/" + R.raw.sample_video;
File inputFile = new File(uri);
try {
InputStream is = new FileInputStream(inputFile);
byte[] bytes = new byte[50];
is.read(bytes);
Log.d("test", new String(bytes));
} catch(IOException e) {
}
的new FileInputStream
行拋出一個FileNotFoundException異常,無論我嘗試對URI什麼變化,但每一件證據我看似乎都同意,這是正確的形式。
由於與項目體系結構有關的原因,直接返回InputStream
的Resource
方法在這裏不是一個選項,所以URI是我能看到的唯一選項。
什麼問題?我誤解了如何指定這個文件的URI?該測試代碼是否代表VideoView是否能夠讀取文件?如果不是,那是什麼?這個測試代碼是否適合你(這將表明我的項目配置必須有錯誤)?
什麼是你ressouce的類型!視頻 ! –
'文件(字符串)'需要一個路徑,而不是一個URI。 – 323go