Android的内部存储和外部存储

内部存储:

1.不需要权限

2.当MODE_PRIVATE时,其他App不可操作。非MODE_PRIVATE 时也需要别的APP知道包名、文件名才能访问。

3.当删除App时,移除文件

方法:

getFilesDir();

getCache(); //当内存不足时,系统会无警告的删除该文件夹的内容,尽可能自己规定文件大小,与何时删除

getFIleOutPutStream();

外部存储:

1.需要权限

2.分为:

PublicFile:

a)所有App可见

b)删除App时不移除文件

c)方法:

getExternalStroragePublicDirectory()

PrivateFile:

a)虽然在外部存储,但事实上不提供数据给其他App

b)当删除App时,移除文件

c)方法:

getExternalFilesDir()

//外部存储方法的形参最好用API的常量例如DIRECTORY_PICTURES ,这样系统就会很好的分类(用于文件分类操作)

3.需要检测外部SDK是否加载

Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState()) ;

发表评论