getFilesDir() vs getExternalFilesDir(),哪个更值得推荐?

getFilesDir() vs getExternalFilesDir(), which one is more recommended?

据我所知,使用 getFilesDir() 存储数据(在我的例子中是相机捕获)有点临时。我说有点是因为如果我关闭并重新打开应用程序,我可以访问目录和文件列表,但不能访问文件本身。

是我的逻辑错误还是设计使然? 2种方法中,更推荐哪种方法:

  1. 一般
  2. 我的情况(需要隐私)

很简单, getFilesDir() 指的是您的应用程序外部无法访问的内部存储。设备也无法探索它。

getExternalFilesDir()指的是外部存储,是一种App专用存储。当您在

中找到它的目录时,这是可以探索的

data/data/your 包名

一般情况下,您可以使用外部存储,因为内部存储可能有限。

出于隐私考虑,如果您需要文件安全性,请使用 getFilesDir(),因为正如我之前提到的,它无法在您的应用程序外部访问。

两者的主要区别在于: getFilesDir() - 该路径将对用户隐藏。这是更安全的方法。 getExternalFilesDir() - 用户可以访问。

收到了一份很好的文档,提供了清晰的理解: http://androidvogella.blogspot.com/2015/12/getfilesdir-vs-getexternalfilesdir-vs.html