2010-12-14 124 views
12


怎麼可能context.getApplicationContext().getCacheDir()返回null?據我所知,內部緩存目錄應該始終存在。緩存目錄不存在

謝謝!

+1

這看起來與您所遇到的情況相似,但目前還沒有修復該錯誤:http://goo.gl/zipcZ – 2010-12-14 18:02:40

+0

感謝您的鏈接!我在應用程序中多次出現過該錯誤,但是我不確定它是否是Android錯誤(但我懷疑它):)我不知道這兩個錯誤是否相關,但評論11會暗示對於應用程序緩存目錄可能是'null' – futtetennista 2010-12-15 10:33:34

+0

如果它是你的代碼而不是像webview那樣的罐頭,你能檢查明顯的錯誤並替換app-private內部存儲目錄嗎?或者如果這不是問題,共享的外部存儲? – 2012-05-01 21:59:10

回答

6

也許它返回null,因爲你沒有足夠的內部存儲空間?嘗試也使用getExternalCacheDir

此外,如果它不工作,只需去路徑。

標準是它應該給你路徑「/ data/data/YOUR_APP_PACKAGE_NAME/cache /」,如果你想要外部存儲緩存,它應該給你路徑「EXTERNAL_STORAGE_PATH/Android/data/YOUR_APP_PACKAGE_NAME /緩存/「。

+0

請記住,如果您正在使用模擬器來執行此操作,請確保您的模擬器正在模擬外部存儲器,如SD卡 – 2013-11-14 17:50:55

2

閱讀http://goo.gl/zipcZ發佈的帖子,似乎應用程序的卸載和重新安裝在許多情況下解決了這個問題。另外閱讀這個線程,看起來這不是你可以解決的問題,因爲它是某些設備上的內部問題。

+0

這可能是一個僅在某些設備上可見的問題,不幸的是我沒有錯誤報告,我也不能仔細檢查這個理論 – futtetennista 2012-05-09 09:45:10