在我的应用程序中,从服务器下载大量文件。我想将它们缓存在SD卡中。 因为那是使用fallowing api ..
context.getExternalCacheDir();
但问题是,无法将它们保存在内部SD卡中(即不可移动的外部存储器)。它们保存在“/ mnt / sdcard / external_sd / Android / data /".
请给我一种将文件保存到不可移动的android缓存中的方法。
此致 SRINIVAS
答案 0 :(得分:1)
来自intellisense for Environment.getExternalStorageDirectory:
“获取Android外部存储目录。如果用户已在其计算机上安装该目录,已从设备中删除或发生其他一些问题,则该目录当前可能无法访问。您可以确定其当前状态使用getExternalStorageState()。
注意:不要在这里混淆“外部”这个词。此目录最好被视为媒体/共享存储。它是一个文件系统,可以容纳相对大量的数据,并在所有应用程序之间共享(不强制执行权限)。传统上这是一张SD卡,但它也可以作为内置存储器实现,该设备不同于受保护的内部存储器,可以作为文件系统安装在计算机上。
在具有多个“外部”存储目录的设备(例如安全应用程序存储和可安装的共享存储)中,此目录表示用户将与之交互的“主要”外部存储。
应用程序不应直接使用此顶级目录,以避免污染用户的根命名空间。应用程序专用的任何文件都应放在Context.getExternalFilesDir返回的目录中,如果卸载了该应用程序,系统将负责删除该目录。其他共享文件应放在getExternalStoragePublicDirectory(String)返回的其中一个目录中。“