2014-02-07 31 views

回答

0

將託管您的庫的應用程序傳遞給File對象,以供他們希望存儲緩存文件的位置。

或者,將您的圖書館通行證申請寄存在Context對象中,您可以從中調用getCacheDir()getExternalCacheDir()

庫沒有緩存目錄。應用程序有緩存目錄。

+0

如何從任何位置訪問上下文? – Victor

+0

@Victor:既然我不知道你是如何構建你的庫,我不能回答這個問題。理想情況下,您不會持續超過幾微秒的'Context',足夠長的時間來調用'getCacheDir()'或'getExternalCacheDir()'。然後,您可以將「File」對象存儲在適合您的庫的位置,包括靜態數據成員。如果您確實需要長時間保持某種'Context',則可以在傳入的Context中調用'getApplicationContext()'並保持它,這樣就不會泄漏內存。 – CommonsWare

+0

我正在爲傳統C++代碼製作一個庫。所以有很多地方需要獲取緩存文件夾,但我沒有Java環境。 – Victor