Android的媒體管理框架:Glide
Glide是一個高效、開源、 Android設備上的媒體管理框架,它遵循BSD、MIT以及Apache 2.0協議發布。Glide具有獲取、解碼和展示視頻劇照、圖片、動畫等功能,它還有靈活的API,這些API使開發者能夠將Glide應用在幾乎任何網絡協議棧里。創建Glide的主要目的有兩個,一個是實現平滑的圖片列表滾動效果,另一個是支持遠程圖片的獲取、大小調整和展示。近日,Glide 3.0發布,現已提供jar包下載,同時還支持使用Gradle以及Maven進行構建。該版本包括很多值得關注的新功能,如支持Gif 動畫和視頻劇照解碼、智能的暫停和重新開始請求、支持縮略圖等,具體新增功能如下如下:
- GIF動畫的解碼:通過調用Glide.with(context).load(“圖片路徑“)方法,GIF動畫圖片可以自動顯示為動畫效果。如果想有更多的控制,還可以使用Glide.with(context).load(“圖片路徑“).asBitmap()方法加載靜態圖片,使用 Glide.with(context).load(“圖片路徑“).asGif()方法加載動畫圖片
- 本地視頻劇照的解碼:通過調用Glide.with(context).load(“圖片路徑“)方法,Glide能夠支持Android設備中的所有視頻劇照的加載和展示
- 縮略圖的支持:為了減少在同一個view組件里同時加載多張圖片的時間,可以調用Glide.with(context).load(“圖片路徑 “).thumbnail(“縮略比例“).into(“view組件“)方法加載一個縮略圖,還可以控制thumbnail()中的參數的大小,以控制顯示不同比例大小的縮略圖
- Activity生命周期的集成:當Activity暫停和重啟時,Glide能夠做到智能的暫停和重新開始請求,并且當Android設備的連接狀態變化時,所有失敗的請求能夠自動重新請求
- 轉碼的支持:Glide的toBytes() 和transcode() 兩個方法可以用來獲取、解碼和變換背景圖片,并且transcode() 方法還能夠改變圖片的樣式
- 動畫的支持:新增支持圖片的淡入淡出動畫效果(調用crossFade()方法)和查看動畫的屬性的功能
- OkHttp和Volley的支持:默認選擇HttpUrlConnection作為網絡協議棧,還可以選擇OkHttp和Volley作為網絡協議棧
- 其他功能:如在圖片加載過程中,使用Drawables對象作為占位符、圖片請求的優化、圖片的寬度和高度可重新設定、縮略圖和原圖的緩存等功能
里面用到了DiskLruCache,但是有所修改,地址https://github.com/sjudd/DiskLruCache/tree/master/src#
需要導入。
本文由用戶 mx64 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!