Android VideoCache視頻緩存的方法詳解
Android VideoCache視頻緩存的方法詳解
項目中遇到視頻播放,需要加載網(wǎng)絡(luò)url,不可能每次都進行網(wǎng)絡(luò)加載,當(dāng)然了,就需要用到我們的緩存機制
AndroidVideoCache
AndroidVideoCache是一個視頻/音頻緩存庫,利用本地代理實現(xiàn)了邊下邊播,使用起來非常簡單。
HttpProxyCacheServer是主要類,是一個代理服務(wù)器,可以配置緩存文件的數(shù)量、緩存文件的大小、緩存文件的目錄和緩存文件命名算法,文件緩存均基于LRU算法,利用Builder來配置:
//配置緩存目錄 public Builder cacheDirectory(File file); //配置緩存文件命名規(guī)則 public Builder fileNameGenerator(FileNameGenerator fileNameGenerator) ; //配置緩存文件大小 public Builder maxCacheSize(long maxSize) ; //配置緩存文件數(shù)量 public Builder maxCacheFilesCount(int count) ;
建議以單列模式將HttpProxyCacheServer存放于Application中:
public class App extends Application { private HttpProxyCacheServer proxy; public static HttpProxyCacheServer getProxy(Context context) { App app = (App) context.getApplicationContext(); return app.proxy == null ? (app.proxy = app.newProxy()) : app.proxy; } private HttpProxyCacheServer newProxy() { return new HttpProxyCacheServer(this); } }
調(diào)用十分方便,只需要增加一行代碼:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); HttpProxyCacheServer proxy = getProxy(); String proxyUrl = proxy.getProxyUrl(VIDEO_URL); videoView.setVideoPath(proxyUrl); } private HttpProxyCacheServer getProxy() { return App.getProxy(getApplicationContext()); }
最后視頻加載的 時候需要判斷是否緩存,做一些比如緩沖進度條的隱藏等操作
以上就是Android VideoCache的使用方法詳解,本站關(guān)于Android開發(fā)的文章還有很多,希望大家搜索查閱,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- Android視頻點播的實現(xiàn)代碼(邊播邊緩存)
- Android音頻錄制MediaRecorder之簡易的錄音軟件實現(xiàn)代碼
- Android提高之MediaPlayer播放網(wǎng)絡(luò)音頻的實現(xiàn)方法
- Android音頻可視化開發(fā)案例說明
- Android使用音頻信息繪制動態(tài)波紋
- Android音頻系統(tǒng)AudioTrack使用方法詳解
- 基于VideoView自定義控制面板的視頻播放器
- 5步學(xué)會使用VideoView播放視頻
- VideoView實現(xiàn)視頻無縫連續(xù)播放
- Android視頻/音頻緩存框架AndroidVideoCache(Okhttp)詳解
相關(guān)文章
Android獲取系統(tǒng)儲存以及內(nèi)存信息的方法(二)
這篇文章主要為大家詳細(xì)介紹了Android獲取系統(tǒng)儲存以及內(nèi)存信息的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10Android FrameWork之SytemServer進程fork示例
這篇文章主要為大家介紹了Android FrameWork之SytemServer進程fork示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07Android自定義控件實現(xiàn)帶文字提示的SeekBar
這篇文章主要給大家介紹了關(guān)于Android自定義控件實現(xiàn)帶文字提示的SeekBar的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12Android 和 windows C/C++/QT通訊時字節(jié)存儲
本篇文章主要介紹 Android和Windows 通訊時數(shù)據(jù)地址的理解,這里提供代碼實例進行分析,有需要參考的朋友可以看下2016-07-07Android自定義可拖拽的懸浮按鈕DragFloatingActionButton
這篇文章主要介紹了Android自定義可拖拽的懸浮按鈕DragFloatingActionButton,需要的朋友可以參考下2017-06-06Android和IOS的瀏覽器中檢測是否安裝某個客戶端的方法
這篇文章主要介紹了Android和IOS的瀏覽器中檢測是否安裝某個客戶端的方法,需要的朋友可以參考下2014-06-06