在内部存储中,$cacheDir, $filesDir是 app 安全的,其他应用无法读取本应用的数据,而外部存储则不是。
在外部存储中,这两个文件夹其他应用程序也可访问。
在外部存储中,$filesDir中的媒体文件,不会被当做媒体扫描出来,加到媒体库中。
在内部存储中:通过 Context.getDir(String name, int mode)可获取和 $filesDir / $cacheDir 同级的目录
目录的命名规则为 app_ + name, 通过 mode 可控制此目录为 app 私有还是其他 app 可读写。
/*内部存储路径*/
// /storage/emulated/0 这个是返回的路径 SD卡跟目录
String sdCard1 = Environment.getExternalStorageDirectory().getAbsolutePath();
// /storage/emulated/0/Android/data/warehouselinyouwang.tyq.com.ceshi/files SD私有目录
String sdCard2 = this.getExternalFilesDir("").getAbsolutePath();
// /storage/emulated/0/Android/data/warehouselinyouwang.tyq.com.ceshi / cache 缓存目录
String sdCard3 = this.getExternalCacheDir().getAbsolutePath();
/*内部存储路径*/
// /data 目录
String sdCard4 =Environment.getDataDirectory().getAbsolutePath();
// /data/user/0/warehouselinyouwang.tyq.com.ceshi/cache
String sdCard =this.getCacheDir().getAbsolutePath();
MyLog.ShowLog(sdCard);