java - Android getExternalFilesDir 与 getFilesDir() 对于大文件

标签 java android

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/

相关文章:

java - 在 cassandra 中使用触发器

java - 监听和响应面板内的事件?

android - Intent.FLAG_ACTIVITY_CLEAR_TOP 销毁目标 Activity 。如何避免?

android - Android SDK中SurfaceHolder.Callback接口(interface)的问题

android - 布局不向上滚动?

java - 由于 setSelection(),EditText 中的文本删除停止

java - 如何创建更改 GUI 中选项卡的常规操作?

java - Android Studio 中的 Gradle 构建问题

java - 如何从 Retrofit2 获得字符串响应?

android - 如何在标记下移动 map ?