import android.content.context;
import android.graphics.bitmap;
import android.os.environment;
import android.util.log;
import com.facebook.cache.disk.diskcacheconfig;
import com.facebook.common.disk.noopdisktrimmableregistry;
import com.facebook.common.internal.supplier;
import com.facebook.common.memory.memorytrimtype;
import com.facebook.common.memory.memorytrimmable;
import com.facebook.common.memory.noopmemorytrimmableregistry;
import com.facebook.common.util.byteconstants;
import com.facebook.imagepipeline.cache.memorycacheparams;
import com.facebook.imagepipeline.core.imagepipelineconfig;
import com.facebook.imagepipeline.core.imagepipelinefactory;
/** * created by 紳丶士 on 2017/12/21.
*/public class cipanhuancun
};//小的磁碟配置
.setbasedirectoryname(image_pipeline_small_cache_dir)//資料夾名
.setmaxcachesize(max_disk_cache_size)//預設快取的最大大小。
.setmaxcachesizeonlowdiskspace(max_small_disk_low_cache_size)//快取的最大大小,使用裝置時低磁碟空間。
.setmaxcachesizeonverylowdiskspace(max_small_disk_verylow_cache_size)//快取的最大大小,當裝置極低磁碟空間
.setdisktrimmableregistry(noopdisktrimmableregistry.getinstance())
.build();
//預設的磁碟配置
diskcacheconfig diskcacheconfig = diskcacheconfig.newbuilder(context).setbasedirectorypath(environment.getexternalstoragedirectory().getabsolutefile())//快取基路徑
.setbasedirectoryname(image_pipeline_cache_dir)//資料夾名
.setmaxcachesize(max_disk_cache_size)//預設快取的最大大小。
.setmaxcachesizeonlowdiskspace(max_disk_cache_low_size)//快取的最大大小,使用裝置時低磁碟空間。
.setmaxcachesizeonverylowdiskspace(max_disk_cache_verylow_size)//快取的最大大小,當裝置極低磁碟空間
.setdisktrimmableregistry(noopdisktrimmableregistry.getinstance())
.build();
//快取配置
imagepipelineconfig.builder configbuilder = imagepipelineconfig.newbuilder(context)
.setbitmapsconfig(bitmap.config.rgb_565)
.setbitmapmemorycacheparamssupplier(msuppliermemorycacheparams)
.setsmallimagediskcacheconfig(disksmallcacheconfig)
.setmaindiskcacheconfig(diskcacheconfig)
.setmemorytrimmableregistry(noopmemorytrimmableregistry.getinstance())
.setresizeandrotateenabledfornetwork(true);
// 這段**,用於清理快取
noopmemorytrimmableregistry.getinstance().registermemorytrimmable(new memorytrimmable()
}});
return configbuilder.build();
}}
fresco.initialize(this,cipanhuancun.getdefaultimagepipelineconfig(this));
fresco清除快取
最近用到fresco發現它的快取功能有時候也是一種麻煩。後台改變而不改變位址時,fresco會自動用快取的而不會重新請求。於是在官網等各種地方蒐集資料後,在這裡記錄一下,以免以後忘了。方法一 方法二 imagepipeline imagepipeline fresco.getimagepipelin...
關於Fresco的快取清理的那些事
我相信很多人對fresco這個優秀的第三方網路處理框架不陌生,無論從使用還是配置而言都是很人性化的簡單,今天要講述的是我遇到的關於快取清理的事情。private void showcachesize elseelse if cachesizetemp1 1 cachesizetemp2 1 else...
Fresco獲取快取中的Bitmap,並設定為背景
最近在開發中,遇到這樣的問題 點選使用者頭像,然後跳轉到使用者詳情頁,使用者詳情頁面的背景用使用者頭像模糊處理後設定進去。由於使用者動態頁面的頭像都是用fresco通過url載入顯示的。所以我必須獲取到使用者頭像在記憶體中的bitmap。然後才能進行處理。直接上 public static void...