Android外部存储与内部存储详解

马肤
这是懒羊羊
  1. 内部储存(内部存储的文件夹其他应用和用户无法直接访问,可以用于存放敏感数据。app进行数据清理或卸载可以清理外部存储和内部存储下的所有文件目录,不需要读写权限)

    getFilesDir()

    (图片来源网络,侵删)

    /data/data/包名/files 或者 /data/user/0/包名/files

    getCacheDir()

    (图片来源网络,侵删)

    /data/data/包名/cache 或者 /data/user/0/包名/cache

    getDir(“xxxxx”, MODE_PRIVATE) 内部存储中的自定义路径

    /data/data/包名/app_xxxxx 或者 /data/user/0/包名/app_xxxxx

  2. 外部存储的私有目录(在Android Q之前其他应用是可以访问修改外部存储的应用私有目录的,使用外部存储之前一定要检查外部存储是否可用,app进行数据清理或卸载可以清理外部存储和内部存储下的所有文件目录,不需要读写权限)

    getExternalFilesDir(null)

    /sdcard/Android/data/包名/files 或者 /storage/emulated/0/Android/data/包名/files

    getExternalCacheDir()

    /sdcard/Android/data/包名/cache 或者 /storage/emulated/0/Android/data/包名/cache

  3. 公有目录(app进行数据清理或卸载不清理外部存储和内部存储下的所有文件目录,Android10过时不建议使用)

    Environment.getStorageDirectory()

    /storage

    Environment.getExternalStorageDirectory()

    /storage/emulated/0

    Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM)

    /storage/emulated/0/DCIM

Cache和Files的区别

Cache:获取App的缓存路径,用来放一些临时文件

默认路径是xxxxx/包名/cache,不同手机厂商的这个路径有差别

Files:获取app的文件路径,用来放一些长期文件

Cache和Files分别对应【设置】里应用的【清除缓存】和【清除数据】功能,一些手机助手在清理垃圾文件的时候也是清理Cache缓存


文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复:表情:
评论列表 (暂无评论,0人围观)

还没有评论,来说两句吧...

目录[+]

取消
微信二维码
微信二维码
支付宝二维码