文件目录API层
| 
 应用文件API  | 
| 
 内部存贮API  | 
| 
 // 内部私有缓存路径,/data/user/0/com.exam.pkg/cache (6.0之后路径) context.getCacheDir().getPath() // 内部私有存贮路径,/data/user/0/com.exam.pkg/files (6.0之后路径) context.getFilesDir().getPath()  | 
| 
 外部存贮API  | 
| 
 // 外部私有目录路径 // /storage/emulated/0/Android/data/com.exam.pkg/files/Pictures context.getExternalFilesDir(Environment.DIRECTORY_PICTURES).getPath() // 外部私有缓存目录路径 // /storage/emulated/0/Android/data/com.exam.pkg/cache context.getExternalCacheDir().getPath() // 外部私有media目录 Context#getExternalMediaDirs()  | 
| 
 Environment  | 
| 
 // 外部存贮根目录 // /storage/emulated/0 Environment.getExternalStorageDirectory().getPath() // 外部存贮公共目录 Environment.getExternalStoragePublicDirectory(type).getPath()  | 
| 
 
  | 
| 
 
  | 
| 
 系统版本  | 
 外部存贮路径  | 
| 
 4.0  | 
 /mnt/sdcard  | 
| 
 4.1  | 
 /storage/sdcard0  | 
| 
 4.2  | 
 /storage/sdcard0  | 
| 
 4.4  | 
 /storage/emulated/0  | 
| 
 6.0  | 
 /storage/emulated/0  | 
| 
 
  | 
 
  | 
| 
 系统版本  | 
 内部私有存贮路径  | 
| 
 4.0  | 
 /data/data/packname/  | 
| 
 4.1  | 
 /data/data/packname/  | 
| 
 4.2  | 
 /data/data/packname/  | 
| 
 4.4  | 
 /data/data/packname/  | 
| 
 6.0  | 
 /data/user/0/packname/  | 
| 
 
  | 
 
  | 
测试代码Android6.0
| 
 /** * 安卓文件路径整理 * Ref: * ---https://blog.csdn.net/u010937230/article/details/73303034/ * ---https://blog.csdn.net/yshxjoy/article/details/72122358 * ---https://blog.csdn.net/xiao_sier/article/details/78667149 */ public class PathUtils { /** * APP私有内部缓存目录 * ---无ROOT权限的其他普通APP不可访问,安全 * ---由Context提供,context提供包括package基本信息、APP应用路径、APP资源访问、数据存贮管理(SP、DB、文件) * ---、四大组件基本操作等服务 * ---主要用于存放缓存文件,当系统的内存存储空间紧张时,该目录下的文件会被删除掉 * /data/user/0/com.simple.common/cache * * @param context * @return */ public static String getCacheDir(Context context) { return context.getCacheDir().getPath(); } 
 /** * APP私有内部存贮路径 * ---无ROOT权限其他普通APP不可访问,安全 * ---卸载应用程序时会被删除掉 * /data/user/0/com.simple.common/files * @param context * @return */ public static String getFilesDir(Context context) { return context.getFilesDir().getPath(); } 
 /** * APP私有外部存贮路径 * ---在外部存贮中,其他应用可访问 * {@link Context#getExternalFilesDirs(String type)} * {@link Context#getExternalCacheDirs()} * {@link Context#getExternalMediaDirs()} * /storage/emulated/0/Android/data/com.simple.common/files/Pictures * @param context * @return */ public static String getExternalFilesDir(Context context) { return context.getExternalFilesDir(Environment.DIRECTORY_PICTURES).getPath(); } 
 /** * APP私有外部缓存目录 * ---在外部存贮中,其他应用可访问 * /storage/emulated/0/Android/data/com.simple.common/cache * @param context * @return */ public static String getExternalCacheDir(Context context) { return context.getExternalCacheDir().getPath(); } 
 /** * 外部存贮目录 * ---由Environment提供,主要有: * ------getExternalStorageDirectory * ------getExternalStoragePublicDirectory * /storage/emulated/0 * @return */ public static String getExternalStorageDirectory() { if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { return Environment.getExternalStorageDirectory().getPath(); } else { return null; } 
 } 
 /** * 外部公共存贮目录 * /storage/emulated/0/DCIM * @return */ public static String getExternalStoragePublicDirectory() { if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { return Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).getPath(); } else { return null; } 
 } }  | 
原文:https://www.cnblogs.com/zhen-android/p/10054420.html