使用Android设备的内部辅助存储器&在卸载应用程序期间数据不会丢失

时间:2014-07-22 11:00:34

标签: android memory

有没有办法将东西存放在设备的辅助存储器中?它没有被删除卸载Android中的应用程序?我做了很多研究和研究。无法找到任何信息,我不想使用数据/数据//因为如果我卸载应用程序,数据将会丢失。如果不能这样做,为什么?因为根据我的直觉,平板电脑的辅助存储器应该像SD卡一样。

1 个答案:

答案 0 :(得分:0)

如果您在应用程序存储区之外和外部存储目录中创建一个文件夹,它应该保留。请参阅:http://developer.android.com/reference/android/os/Environment.html

具体而言' getExternalStorageDirectory()'

来自Android文档

  

public static File getExternalStorageDirectory()

     

在API级别1中添加返回主外部存储目录。   如果已安装此目录,则该目录当前可能无法访问   由用户在他们的计算机上,已从设备中删除,或   还发生了一些其他问题。您可以确定其当前状态   使用getExternalStorageState()。

     

注意:不要被"外部"这个词弄糊涂。这里。这个目录   可以更好地被视为媒体/共享存储。它是一个文件系统   可以容纳相对大量的数据,并且可以共享   所有应用程序(不强制执行权限)。传统上这是   SD卡,但它也可以作为内置存储器实现   与受保护的内部存储区别的设备,可以是   作为文件系统安装在计算机上。

     

在具有多个用户的设备上(如UserManager所述)   用户拥有自己独立的外部存储空间。应用程序只有   为他们正在运行的用户访问外部存储空间。

     

在具有多个"外部"的设备中存储目录,这个   directory代表" primary"用户将使用的外部存储   与。。。相互作用。可通过

访问二级存储      

应用程序不应直接使用此顶级目录   以避免污染用户的根命名空间。任何文件   私有应用程序应放在由返回的目录中   Context.getExternalFilesDir,系统将负责处理   删除应用程序是否已卸载。其他共享文件应该   被放置在其中一个目录中   getExternalStoragePublicDirectory(字符串)。

     

写入此路径需要WRITE_EXTERNAL_STORAGE权限,   并且从读访问开始需要READ_EXTERNAL_STORAGE   权限,如果您持有写入,则自动授予   权限。

     

从KITKAT开始,如果您的应用程序只需要存储内部   数据,考虑使用getExternalFilesDir(String)或   getExternalCacheDir(),它不需要读取或写入权限。

     

此路径可能会在平台版本之间发生变化,因此应用程序应该   只坚持相对路径。