getExternalFilesDir 和 getFilesDir() 之间的区别对我来说很清楚并且解释得很好 here .
在我的例子中,由于我需要将文件保密并且不能被用户或其他应用程序访问(至少在非 root 设备中),getFilesDir() 似乎是完美的。但是,我将在那里放置大文件(假设总共大约 2Gb)并且我想知道该文件夹/分区通常是否足以满足该目的(我在文档中没有找到任何相关信息)。
编辑:
我找到了一些信息here .似乎现代设备至少有 1GB,但我仍然无法弄清楚现代设备上的典型分区大小是多少......
最佳答案
即使数据分区有 20GB(与默认文件资源管理器中显示的内部存储不同)一个应用程序浪费 2GB 大约是 10% 它对我来说非常重要,我使用了 10 个以上应用 。 许多电话没有 20GB。
在设备的内部存储中拥有 2GB 对于一个应用程序来说已经太多了,许多设备在数据分区中有 2GB 或 4GB,有些则更少,并且应用程序的重点是尽可能在所有设备上运行。
数据分区用于系统应用程序存储数据,如果已满,系统会变慢和出现故障。如果外部存储已满则不一样。
如果你想提供一些安全措施,比如“除非你root手机,否则这个应用程序的数据不能被窃取”你可以将你的数据存储在加密的外部存储中,并将 key 保存在内部,以防止其他应用程序窃取数据。
关于java - Android getExternalFilesDir 与 getFilesDir() 对于大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39406607/