当系统内存不足时,Android 可能会自动删除 CacheDir 中的文件。但文档表示我们不应该依赖于系统清理此缓存,因此需要编写额外的代码进行轮询和删除。
如果是这种情况,为什么要选择 getCacheDir()
而不是 getFilesDir()
?两者都在内存中,后者在清理内容和时间方面为开发人员提供了更多的控制权。
谢谢!
当系统内存不足时,Android 可能会自动删除 CacheDir 中的文件。但文档表示我们不应该依赖于系统清理此缓存,因此需要编写额外的代码进行轮询和删除。
如果是这种情况,为什么要选择 getCacheDir()
而不是 getFilesDir()
?两者都在内存中,后者在清理内容和时间方面为开发人员提供了更多的控制权。
谢谢!
File
对象,因此OP似乎误认为getFilesDir()
“为开发人员提供了更多的功能”。它们都提供相同的功能。 - Erik SandbergSharedPreferences
等。 - CommonsWaregetCacheDir()
返回缓存文件的路径,而 getFilesDir()
返回应用程序内部存储创建和存储的文件的路径。内部存储是持久性的:系统无法删除它。