fresco優化記憶體

2021-09-29 20:22:59 字數 1202 閱讀 5726

compile 『com.facebook.fresco:fresco:1.8.1』

// 支援 gif **,需要新增

compile 『com.facebook.fresco:animated-gif:1.8.1』

// 支援 webp (靜態圖+**),需要新增

compile 『com.facebook.fresco:animated-webp:1.8.1』

compile 『com.facebook.fresco:webpsupport:1.8.1』

以下為減少fresco記憶體佔據的幾個小步驟:

imagepipelineconfig config = imagepipelineconfig.newbuilder(this)

.setmaindiskcacheconfig(diskcacheconfig)

.setdownsampleenabled(true)

.build();

fresco.initialize(this, config);

同時在ontrimmemory與onlowmemory中清理記憶體:

@override

public void ontrimmemory(int level)

} catch (exception e)

}@override

public void onlowmemory() catch (exception e)

}public static draweecontroller getlispiccontroller(string photourl)

//使用controller載入@override

protected void onbind(holder holder, int position)

protected void tryaddtocacheurls(string url) 

}

然後在頁面關閉或者退出等必要時候手動清除記憶體:

@override

public void ondestroy()

protected void tryclearmemorycache()

protected void evictfromdiskcache( set piccacheuris) catch (exception e) }}

}

Fresco匯入android studio方法

ubutu fresco匯入android studio方法 1.ndk配置 sudo vim etc profile i 是插入 儲存之前按esc 冒號 wq 儲存退出 source etc profile 重新整理環境變數 檢測ndk ndk 2.fresco 碰到failed to find ...

fresco清除快取

最近用到fresco發現它的快取功能有時候也是一種麻煩。後台改變而不改變位址時,fresco會自動用快取的而不會重新請求。於是在官網等各種地方蒐集資料後,在這裡記錄一下,以免以後忘了。方法一 方法二 imagepipeline imagepipeline fresco.getimagepipelin...

Fresco磁碟快取

import android.content.context import android.graphics.bitmap import android.os.environment import android.util.log import com.facebook.cache.disk.dis...