Android存储权限(备忘)

访问外置存储并不是一定需要以下这些权限(Android 4.4以上)

WRITE_EXTERNAL_STORAGEREAD_EXTERNAL_STORAGE

通过

getExternalCacheDir()getExternalFilesDir()

这两个方法不需要申请权限就可以访问外置存储的

  /storage/sdcard0/Android/data/packname/files  /storage/sdcard0/Android/data/packname/cache

这两个目录的

  • 4.4以下系统如果没有外置sd卡,调用这两个方法会返回空
  • 4.4以下和4.4以上的存储概念是不一样的。

Android4.4上下存储区别

  1. Android4.4以下

     机身存储=内置存储(系统) sd卡=外置存储 总容量=机身存储+sd卡
  2. Android4.4(包括)以上

     机身存储=机身内置存储(系统)+机身外置存储 sd卡=设备外置存储 总容量=机身存储+sd卡

存储位置获取

  1. 内置存储

获取方式:getFilesDir()

sample:/data/data/packname/files

  1. 外置存储(4.4以下为sd卡,4.4以上为机身外置存储)

获取方式:getExternalStorageDirectory()

sample:/storage/emulated/0

  1. 外置sd卡(4.4以上)

获取方式:getExternalFilesDirs()

sample:/storage/sdcardName

参考:

https://blog.csdn.net/csdn_aiyang/article/details/80665185

更多相关文章

  1. Android(安卓)控件之DatePicker,TimePicker,Calender
  2. ANDROID获取设备ID、型号及其它信息
  3. android 获取控件真实高度
  4. Android(安卓)google地图开发的前期准备(MD5和密钥的获取)
  5. android 网络 post get
  6. Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面
  7. Android如何注册服务到ServiceManager?
  8. Android开发常用代码片段(三)
  9. Android常用代码之普通及系统权限静默安装APK

随机推荐

  1. 【Android】远程服务(Remote Service)的
  2. Android白眉鹰王之BroadcastReceiver
  3. Android简单调用相机Camera功能,实现打开
  4. Android(安卓)eclipse 没有Annotation Pr
  5. Eclipse开发Android应用程序入门:重装上
  6. android的selector背景选择器
  7. Android系列教程之五:Activity的生命周期
  8. Android的SoundPool
  9. Android中的Looper,Handler及HandlerThrea
  10. 学习Content Provider