您的位置:首页 > 移动开发 > Android开发

Android 文件系统 内部存储和外部存储的区别

2016-04-15 16:41 253 查看






一、内部存储:

内部存储的访问可以通过:
1、getFileDir() :用来存储app内部数据,当内部存储紧张时不会被自动删除
2、getCacheDir():用户存储App内部的缓存数据,当内部存储紧张时回被系统自动的删除
3、openFileOutput():对getFileDir的封装。返回outputstream流

二、外部存储:

1、在manifest添加android.permission.WRITE_EXTERNAL_STORAGE权限
2、外部存储的访问前首先要判读是否可用:getExternalStorageState()==Enviroment.MEDIA_MOUNTED时表示已经挂载成功可以使用
3、若需要在app被卸载时数据随同删除可以通过getexternFileDir。若需要保留则使用getExternalStoragePublicDirectory()
4、推荐使用Enviroment下面的DIRECTORY__XXX来取名,这样系统可以根据名字来处理相应的逻辑 如:
使用DIRECTORY_RINGTONE来存储铃声,则系统扫描音乐的时候则不会来扫描该目录

三、可用空间的使用:

通过File的getFressSpace()来获取当前可以存储的空间。但空间的大小并不代表真实可用大小。因为系统还会保留一部分。当新写入后如果可用空间大于10%时候就可以判断可以存储
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: