2011-02-07 19 views
3

我正在開發Android應用程序,無法完全找出實現可在單個應用程序中的多個活動之間共享的2級圖像緩存的最佳方式。Android:在活動中共享圖像緩存

實施例:

應用具有3個活動(A,B,和C)和參數的緣故可以說,A呼叫B和B調用C和C調用A.每個活動顯示從下載的圖像網絡和我正在使用asynctask來下載和顯示每個活動中的圖像 - 很簡單。現在我想添加一個圖像緩存,以避免同一圖像的多次下載。

現在,每個活動都會啓動一個簡單的asyncTask的新實例,該實例下載圖像並適當更新視圖。很顯然,它很容易更新基本的asyncTask來檢查圖像緩存,然後在下載完成之前繼續下載並更新緩存,但是我一直堅持如何/在哪裏創建和初始化緩存。任何想法將不勝感激。

+0

爲什麼不把影像的SD卡上? – androidworkz 2011-02-07 18:15:26

回答

2

您可以添加到您的應用程序的清單:

應用軟件Android:命名 = 「MyApplication的」(...)

然後,您可以創建具有名稱「一類我的應用程序」。然後,您可以在整個活動中使用該課程。在進行異步調用之前,檢查是否已經有適當的圖像供您使用。如果你有,你使用一個「緩存」,如果沒有,你可以得到一個新的。你可以嘗試這樣的事情(在這種情況下獲得一些隨機字符串):

ArrayList的myStrings = ((所有MyApplication) this.getApplication())getRandomStrings()。

希望這對你有所幫助。 :)

編輯:不要忘記將創建 「爲MyApplication」 是這樣的:

公共類MyApplication的擴展 應用

+0

謝謝。關鍵是擴展應用程序任務。 – tsr 2011-02-09 04:14:38