[英]Play video from assets in VideoView in Android on API level <7?
我想播放存儲在我的Android應用程序資產文件夾中的視頻。 以下代碼在較新的API級別(在16上測試)上有效(意味着視頻可以播放),但在6級別上無效。
String FILEPATH = "/data/data/com.example.test1/videoname.flv";
//GET VIDEO FROM ASSETS
try {
InputStream is = getAssets().open("videoname.flv");
OutputStream os = new FileOutputStream(FILEPATH);
byte[] buffer = new byte[50000];
int bytesRead;
while((bytesRead = is.read(buffer)) !=-1){
os.write(buffer, 0, bytesRead);
}
is.close();
os.flush();
os.close();
} catch (IOException e) {
e.printStackTrace();
}
//SET VIDEO SOURCE AND PLAY VIDEO
video_player_view = (VideoView) findViewById(R.id.video_view);
video_player_view.setVideoPath(FILEPATH);
video_player_view.start();
在API級別6上,出現一條消息:
“抱歉,這部影片無法播放”
如何在非常低的API級別下也從資產文件夾播放視頻?
正如@petey所說,並不需要真正支持API 8以下的任何東西。更大的問題是,FLV本身不受支持,而支持取決於設備和Flash插件的安裝,最安全的選擇是在WebView中播放視頻。
但是,由於Google最近從商店中刪除了Flash插件,並且您只能從Adobe網站手動安裝它,因此您要么需要停止使用FLV,要么在允許的情況下,應該購買一些支持FLV格式的播放器組件,例如Vitamio 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.