Android VideoCache視頻緩存的方法詳解
成都創(chuàng)新互聯(lián)專注于五寨企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站,商城網(wǎng)站開發(fā)。五寨網(wǎng)站建設(shè)公司,為五寨等地區(qū)提供建站服務(wù)。全流程按需定制開發(fā),專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
項目中遇到視頻播放,需要加載網(wǎng)絡(luò)url,不可能每次都進(jìn)行網(wǎng)絡(luò)加載,當(dāng)然了,就需要用到我們的緩存機(jī)制
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()); }
最后視頻加載的 時候需要判斷是否緩存,做一些比如緩沖進(jìn)度條的隱藏等操作
以上就是Android VideoCache的使用方法詳解,本站關(guān)于Android開發(fā)的文章還有很多,希望大家搜索查閱,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞標(biāo)題:AndroidVideoCache視頻緩存的方法詳解
新聞來源:http://bm7419.com/article38/igcpsp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、品牌網(wǎng)站制作、App設(shè)計、微信公眾號、域名注冊、網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)