转:https://blog.csdn.net/luoguopeng/article/details/72832567

android app目录: SDCard/Android/data/你的应用的包名/

原来,只要把文件写在这里的话,可以不用动态申请权限,只要在manifest里面声明权限就ok了;

应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。

大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。

这样当该应用被卸载后,这些数据还保留在SDCard中,留下了垃圾数据。

并且在API

6.0之后,根目录文件存储是需要用户授权的,就算你在AndroidManifest.xml中配置了存储权限,用户不授权也是写不进去了。

SD卡读写权限:

'''

如果你想让你的应用被卸载后,与该应用相关的数据也清除掉,该怎么办呢?

通过

context.getExternalFilesDir()

可以得到

SDCard/Android/data/你的应用的包名/files/

这个目录里面,一般放一些长时间保存的数据

方法可以获取到 SDCard/Android/data/你的应用的包名/files/ 目录,一般放一些长时间保存的数据

通过

context.getExternalCacheDir()

方法可以获取到

SDCard/Android/data/你的应用包名/cache/

这个目录里面,一般存放临时缓存数据

如果使用上面的方法,当你的应用在被用户卸载后,SDCard/Android/data/你的应用的包名/ 这个目录下的所有文件都会被删除,不会留下垃圾信息。并且

这个方法获得的文件存储路径适用于6.0以后系统,只要AndroidManifest.xml配置读写权限了,就不需要用户再授权了。

正常开发中获取存储路径的方法是:

public String getDiskCacheDir(Context context) {

String cachePath = null;

if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())

|| !Environment.isExternalStorageRemovable()) {

cachePath = context.getExternalCacheDir().getPath();

} else {

cachePath = context.getCacheDir().getPath();

}

return cachePath;

}

可以看到,当SD卡存在或者SD卡不可被移除的时候,就调用getExternalCacheDir()方法来获取缓存路径,否则就调用getCacheDir()方法来获取缓存路径。前者获取到的就是 /sdcard/Android/data//cache 这个路径,而后者获取到的是 /data/data//cache 这个路径。

设置->应用->应用详情里面的”清除数据“与”清除缓存“选项分别对应的是data/data//和data/data//cache

external storage (外部存储):

Environment.getExternalStorageDirectory()SD根目录:/mnt/sdcard/ (6.0后写入需要用户授权)

context.getExternalFilesDir(dir)路径为:/mnt/sdcard/Android/data/< package name >/files/…

context.getExternalCacheDir()路径为:/mnt/sdcard//Android/data/< package name >/cache/…

internal storage(内部存储):

context.getFilesDir()路径是:/data/data/< package name >/files/…

context.getCacheDir()路径是:/data/data/< package name >/cach/…

android app文件夹,android app文件目录结构相关推荐

  1. android歌词文件夹,Android歌词文本解析

    1. LRC文本解读 Android中要实现滚动歌词的第一步,是需要对LRC歌词文本进行解析,首先来看一份标准的歌词文本模式: [ti:失恋战线联盟] [ar:草蜢] [al:] [00:00.00] ...

  2. android vold文件夹,android vold

    [实例简介] android vold模块,支持多分区挂载,支持ntfs.exfat格式挂载,压缩包中的tools目录,是一些工具,就是为了支持ntfs.exfat格式的挂载,需要把这些可执行文件拷贝 ...

  3. android 文件 删除文件夹,android 删除文件以及递归删除文件夹

    Python之文件处理-递归删除特定文件 #!/usr/bin/env python # -*- coding:utf-8 -*- import os def delete_particular_fi ...

  4. android 获取文件夹下的所有文件

    昨天,在做工作时,需要遍历所有一个文件夹下的所有文件夹,当时自己也不知道怎么做,后来在网上搜索了一些资料,发现其实也很简单. 1.获取SD是否可以读写,如果可以,则传入文件的路径 /*读取输入的某个文 ...

  5. android 7 创建文件夹,Android 在 res/layout 文件夹 下创建一个 子文件夹实例

    Android 资源文件夹 Layout 文件夹 Layout 文件是存放Android的布局文件的资源文件夹,但是如果你想要在里面创建子文件夹,你会发现xml文件报错. 如何在Layout文件夹下方 ...

  6. android sdk文件位置,Android SDK文件夹位于何处?

    我通过Air for Android用Adobe Flash创建了一个.apk应用程序.现在,我想通过这款Blackberry在线打包机为黑莓App World做好准备:https://bdsc.we ...

  7. android 删除目录下所有文件大小,Android 删除文件夹(文件夹以及文件夹下所有的文件)、文件...

    1.Android 删除文件夹(文件夹以及文件夹下所有的文件) //删除文件夹和文件夹里面的文件 public static void deleteDirWihtFile(File dir) { if ...

  8. android data文件夹操作

    1,看代码 public class DBTest extends Activity {SQLiteDatabase db;Button bn = null;ListView listView;@Ov ...

  9. android 根目录uri,如何在根目录下创建一个文件夹Android

    我需要在根目录下创建CAT_IMG文件夹,并在列表视图中检索它.但CAT_IMG文件夹不在根目录中创建.我在清单文件中添加了权限.请帮我在根目录下创建一个文件夹.如何在根目录下创建一个文件夹Andro ...

最新文章

  1. 逆袭!? 期待下一个“BCH”出现
  2. Cortana小娜:城市信息提醒
  3. 将json字符串转换成html,将JSON HTML字符串转换为HTML
  4. anaconda在安装依赖包时出现报错提示 ‘requests‘ is a dependency of conda and cannot be remove from conda‘s operatin
  5. AMD Cubemapgen for physically based rendering
  6. centos7 docker安装_Centos7 安装 Docker
  7. mysql的面试2_mysql数据库面试题(2)
  8. Maven里头的pom.xml配置详解
  9. UHF-RFID基础知识
  10. C语言scanf函数用法完全攻略
  11. 微信小程序实现图片虚化(滤镜)效果
  12. android中Uri.parse()用法,调用电话短信浏览器等
  13. 数组之concat注意事项-不更改原数组
  14. zabbix_proxy代理服务器搭建教程
  15. 【系统分析师之路】第七章 复盘系统设计(业务流程建模)
  16. 用Javascript实现回到顶部效果
  17. 实现Swap函数,将两个数交换
  18. 《弃子长安》第九章 大漠金钩
  19. 拦截手机app发起的请求,获取请求信息!调试必备!!!
  20. Cadence Pspice添加外部白噪声

热门文章

  1. 神威计算机英语,“神威太湖之光”取代“天河二号” 成全球最快超级计算机...
  2. CentOS7下安装和开启远程连接reids
  3. 用微信扫一扫功能扫描二维码下载安装APK不能用,不能打开APK下载链接的解决方案
  4. Ajax 改造,第 3 部分: 用 jQuery、Ajax 选项卡和照片 carousel 改进现有的站点
  5. Arduino + GP2D12红外测距传感器+LCD1602
  6. Android开发酒店预定预约管理系统
  7. java 判断图片合适,Java 判断图片色彩
  8. android夜景录像模式,【图片】三种夜景拍摄手法优缺点对比,仅供参考【android吧】_百度贴吧...
  9. Disturbed People CodeForces - 1077B
  10. 《Adobe Premiere Pro CS4经典教程》——1.7 Adobe Premiere Pro工作区