2013-04-14 50 views
2

我試圖跟着那個關於DiskCache的部分,但是我在那個代碼中發現了很多問題。我固定了很多,但有一個我不知道該怎麼做。這是這一個:Jake Wharton&Support Library如何緩存圖像?

mDiskLruCache.put(key, bitmap); 

而這一次

mDiskLruCache.get(key); 

這些方法不存在。我添加了Jake Wharton和Support Library v4的.jar,但他們都沒有工作。請,誰能告訴我這裏發生了什麼?

另外我正在尋找如何使用那個https://github.com/fhucho/simple-disk-cache捕捉圖像,但我不知道該怎麼做。

任何幫助將被折衷。

編輯1

我使用的是什麼Budius建議更換我,但我有一個問題。我創建的onCreate

DiskLruImageCache dlic=new DiskLruImageCache(getApplicationContext(),"bckgCache", CACHESIZE, CompressFormat.PNG, 70); 

所以我覺得,我每次打開應用程序時,我overwritting緩存,至極是不好的,因爲我需要一些位圖存儲從一個應用到另一個。有什麼方法可以檢查如果緩存已經存在,所以我不再創建它?

EDIT 2

我打開了一個帖子問這個問題,所以我們不會混合兩者。 How check if a DiskLruCache already exists? (Android)

不容標記爲回答任何評論,只是作爲一個有用

+1

我以前使用過這個SO帖子的代碼,它工作的很好:http://stackoverflow.com/questions/10185898/using-disklrucache-in-android-4-0-does-not-provide-for -opencache-method – Budius

+0

感謝您的回覆。我之前看到過,我沒有嘗試。據我能理解它只有get/put文件是正確的?我的意思是,我有我自己的線程從網址下載圖像,仍然是必要的? – MBRebaque

+0

是的。該代碼和Jakes庫會在您稱之爲它們的線程中執行所有操作。所以一定要調用UI的一切。 – Budius

回答