我正在使用Eclipse / Ubuntu开发一个Android应用程序。像往常一样,我正在AVD模拟器上进行第一次拍摄。我想在我当前的仿真器和最终的物理设备(SD存储卡)上使用一个独特的文件夹结构。 对于这两种类型的虚拟和物理设备,通过程序(当然是Java)获取根目录的Android环境变量是什么,以便我可以获得我的起始引用? 谢谢 PS:我打开了DDMS文件资源管理器,以防答案引用那里的结构
答案 0 :(得分:1)
您可以看到http://developer.android.com/reference/android/os/Environment.html使用getExternalStorageDirectory()
方法获取“相同”目录
答案 1 :(得分:1)
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
如果要在存储空间中写入
,则需要用户权限File root = Environment.getExternalStorageDirectory();
这将创建根目录的实例
答案 2 :(得分:1)
Environment.getExternalStorageDirectory()
已被弃用,应改用Context#getExternalFilesDir(String),MediaStore或Intent#ACTION_OPEN_DOCUMENT。
此方法在API级别29中已弃用。 为了提高用户隐私,不建议直接访问共享/外部存储设备。当应用程序定位到Build.VERSION_CODES.Q时,此方法返回的路径不再可供应用程序直接访问。通过迁移到Context#getExternalFilesDir(String),MediaStore或Intent#ACTION_OPEN_DOCUMENT之类的替代方案,应用程序可以继续访问共享/外部存储中存储的内容。
https://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory()