FrescoSupport使用說明

1、概述

FrescoSupport是基於Facebook開源庫Fresco而包裝的一個管理類。

2、Fresco簡介

Fresco 是一個強大的圖片加載組件,它設計有一個叫做 image pipeline 的模塊,負責從網絡,從本地文件系統,本地資源加載圖片。且包含3級緩存機制(2級內存,1級文件)。Drawees 模塊負責圖片的顯示。

2.1 Fresco特性

1、在5.0以下系統,Fresco將圖片放到一個特別的內存區域(Ashmem)。當然,在圖片不顯示的時候,佔用的內存會自動被釋放。
2、支持漸進式圖片格式:先呈現大致的圖片輪廓,然後隨着圖片下載的繼續,呈現逐漸清晰的圖片。
3、支持加載Gif圖,支持WebP格式

2.2 Drawees

Drawees支持的特性如下:

自定義居中焦點(對人臉等圖片顯示非常有幫助)
圓角圖,當然圓圈也行。
下載失敗之後,點擊重現下載
自定義佔位圖,自定義overlay, 或者進度條
指定用戶按壓時的overlay

2.3 image pipeline

image pipeline 的設計,允許用戶在多方面控制圖片的加載:

爲同一個圖片指定不同的遠程路徑,或者使用已經存在本地緩存中的圖片
先顯示一個低解析度的圖片,等高清圖下載完之後再顯示高清圖
加載完成回調通知
對於本地圖,如有EXIF縮略圖,在大圖加載完成之前,可先顯示縮略圖
縮放或者旋轉圖片
處理已下載的圖片
WebP 支持

2.4 官方文檔

官方maven依賴,默認使用第一個依賴就好,使用官網的網絡層;第二個依賴用來吧Android網絡層替換成OKHttp。

dependencies {
  compile 'com.facebook.fresco:fresco:0.6.0+'
  compile 'com.facebook.fresco:imagepipeline-okhttp:0.6.0+'
}

Fresco官網文檔
Fresco github下載

3 FrescoSupport使用

FrescoSupport相對簡單,只是在Fresco上的簡單封裝。

其中提供了一個Fresco的通用配置類FrescoConfig,一般的使用足夠,需要定製的請參考此文件以及Fresco官網。
FrescoManager爲靜態管理類,提供了一個初始化方法init,默認不帶參數的init方法使用上面提供的標準配置文件初始化。當然可以傳入一個自己的配置文件ImagePipelineConfig,定製自己特色的初始化需求。

4 FrescoSupport地址

svn地址 http://200.200.200.40/svn/repositories/android/code/trunk/maven/FrescoSupport

maven地址 com.android.common:FrescoSupport:1.0.0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章