“getDataDir()”与getFilesDir有何不同?

时间:2016-10-07 15:34:43

标签: android

从API 24添加了返回File对象的“getDataDir()”。如果使用它,则需要最低API级别为24.

文档解释了它的用法:

  

返回文件系统上目录的绝对路径,其中存储了属于此应用程序的所有私有文件。 应用不应直接使用此路径 ;他们应该在此类上使用 getFilesDir(),getCacheDir(),getDir(String,int)或其他存储API。

     

如果将调用应用程序移动到已采用的存储设备,则返回的路径可能会随时间发生变化,因此只应保留相对路径。

     

调用应用程序无需其他权限即可在返回的路径下读取或写入文件。

如何:getDataDir()(在API 24中添加)与getFilesDir()或Environment.getDataDirectory()不同?

在什么情况下可以使用该功能?我知道存在的路径函数< = 23

1 个答案:

答案 0 :(得分:2)

getFilesDir()返回的目录将位于getDataDir()内。这两者都与Environment.getDataDirectory()无关,它返回所有内部存储的根。

  

在什么情况下可以使用该功能?

一种情况是对该应用的内部存储上的所有文件实施某种应用内完整备份。