【问题标题】:Cache directory doesn't exist缓存目录不存在
【发布时间】:2025-11-30 04:05:01
【问题描述】:


context.getApplicationContext().getCacheDir() 怎么可能返回null?据我所知,内部缓存目录应该始终存在。

谢谢!

【问题讨论】:

  • 这看起来与您遇到的相似,但尚未修复该错误:goo.gl/zipcZ
  • 感谢您的链接!升级时,我的应用程序中也出现过几次该错误,但我不确定这是 Android 错误(但我怀疑它):) 我不知道这两个错误是否相关,但请评论11 表明对于应用程序,缓存目录可能是null
  • 如果是你的代码而不是像 webview 这样的罐头,你能检查明显的错误并替换应用程序私有内部存储目录吗?或者,如果不是问题,共享外部存储?
  • 听起来你没有有效的上下文,这可能吗?
  • @nmr:老实说从未听说过这样的事情

标签: android caching memory-management


【解决方案1】:

也许它返回 null 因为您没有足够的内部存储空间?尝试也使用getExternalCacheDir

另外,如果它不起作用,只需转到路径。

标准是它应该给你路径“/data/data/YOUR_APP_PACKAGE_NAME/cache/”,如果你想要外部存储缓存,它应该给你路径“EXTERNAL_STORAGE_PATH/Android/data/YOUR_APP_PACKAGE_NAME/cache /" .

【讨论】:

  • 请记住,如果您使用模拟器来执行此操作,请确保您的模拟器正在模拟 SD 卡等外部存储器
【解决方案2】:

阅读http://goo.gl/zipcZ 上发布的主题,似乎在许多情况下卸载并重新安装应用程序可以解决问题。此外,阅读该主题后,您似乎无法将其修复为某些设备上的内部问题。

【讨论】:

  • 这可能是一个仅在某些设备上可见的问题,不幸的是我没有错误报告,我无法仔细检查这个理论