gpt4 book ai didi

android - 为什么在 Android 上使用 getCacheDir()

转载 作者:IT老高 更新时间:2023-10-28 23:40:40 24 4
gpt4 key购买 nike

一旦系统内存不足,Android 可能会自动删除 CacheDir 中的文件。但是文档说我们不应该依赖系统清除这个缓存,因此编写额外的代码来进行轮询和删除。

如果是这样,为什么要选择 getCacheDir() 而不是 getFilesDir()?两者都在内存中,后者在清理内容和时间方面为开发人员提供了更多权力。

谢谢!

最佳答案

Android may auto-delete the files in CacheDir once the system gets low on memory.

正确。第三方应用程序还可以从应用程序的缓存目录中删除文件。而且,正如 zapl 所说,用户可以从设置中手动清除应用程序的缓存。

But the docs say we should not rely on the system clearing this cache, and hence write additional code for polling and deleting.

也正确。

If this is the case, why should one opt getCacheDir() over getFileDir() ?

因为操作系统、第三方应用程序和用户可以清除缓存。然而,仅仅因为那些东西可以清空缓存并不意味着它们会自动清空缓存,所以你需要时常自己清理缓存。同样,虽然您的母亲可以打扫您的房间,但如果您不想被扫帚打到,您最好自己打扫房间。

and the latter offers more power to the developer in terms of what to clean up and when...

不,它没有。 getCacheDir() 返回一个 File 对象。 getFilesDir() 返回一个 File 对象。它们在“开发人员在清理内容和时间方面的权力”方面是等效的。

关于android - 为什么在 Android 上使用 getCacheDir(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13731203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com