来自HERE http://developer.android.com/reference/android/content/ContextWrapper.html#getFilesDir%28%29 and HERE http://developer.android.com/reference/android/os/Environment.html#getDataDirectory%28%29
公共文件 getFilesDir ()
返回文件系统上使用以下命令创建的文件所在目录的绝对路径openFileOutput(String, int)
被存储。
公共静态文件获取外部存储目录()
返回主要外部存储目录。如果用户已将其安装在计算机上、已从设备中删除或发生了其他问题,则当前可能无法访问此目录。您可以通过以下方式确定其当前状态getExternalStorageState()
.
注意:不要对这里的“外部”一词感到困惑。该目录可以更好地被视为媒体/共享存储。它是一个可以容纳相对大量数据并且在所有应用程序之间共享的文件系统(不强制执行权限)。传统上,这是一张 SD 卡,但它也可以实现为设备中的内置存储,与受保护的内部存储不同,并且可以作为文件系统安装在计算机上。
在具有多个用户的设备上(如 UserManager 所描述),每个用户都有自己独立的外部存储。应用程序只能访问它们运行时的用户的外部存储。
如果您想获取应用程序路径,请使用getFilesDir()
这会给你路径/data/data/your package/files
您可以使用以下命令获取路径Environment
你的变量data/package
使用
getExternalFilesDir(Environment.getDataDirectory().getAbsolutePath()).getAbsolutePath();
这将返回外部存储根目录的路径,如下所示/storage/sdcard/Android/data/your pacakge/files/data
要访问外部资源,您必须提供以下权限WRITE_EXTERNAL_STORAGE
and READ_EXTERNAL_STORAGE
在你的清单中。
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
查看获取目录路径的最佳文档 https://gist.github.com/granoeste/5574148