我正在开发一款需要直接访问SD卡根目录的应用程序,然而在Android 4.2中,标准的/sdcard目录现在指向运行该应用程序的用户特定的“模拟”SD卡。这不好,因为我的应用程序需要访问存储在SD卡顶层的文件。有人知道如何在Android 4.2中直接访问SD卡吗?
我正在开发一款需要直接访问SD卡根目录的应用程序,然而在Android 4.2中,标准的/sdcard目录现在指向运行该应用程序的用户特定的“模拟”SD卡。这不好,因为我的应用程序需要访问存储在SD卡顶层的文件。有人知道如何在Android 4.2中直接访问SD卡吗?
你能将存储目录用作文件类型吗?(java.io.File
)
如果可以的话,你可以在你的方法中使用以下代码获取外部存储(通常是SD卡,但在没有SD卡的手机上将是主存储):
File path = Environment.getExternalStorageDirectory();
READ_EXTERNAL_STORAGE
权限 - 如果修改任何数据,则需要WRITE_EXTERNAL_STORAGE
。以下是这些权限在清单中的显示方式:<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
来源:
http://developer.android.com/reference/android/os/Environment.html http://developer.android.com/reference/android/Manifest.permission.html
Environment.getExternalStorageDirectory()
访问我的SD卡。返回的目录是/storage/emulated/0
,但内容是/sdcard
的内容。