0

我正在尝试访问 Android 的“外部”文件夹,但我找不到它。请注意,我的设备是摩托罗拉 Xoom,我使用 adb shell。

如何找到外部文件夹?我应该安装NDK吗?

感谢

4

5 回答 5

0

某些文件夹由于其访问权限(需要 root 用户权限)而无法访问。尝试在模拟器中访问此文件夹。默认情况下它是植根的,你会看到这是否是原因。

于 2011-08-15T11:28:34.600 回答
0

Xoom 中的外部 SD 卡安装在 /mnt/external1/ 中,并且除了读取访问权限之外,从任何级别都授予此目录的访问权限,因为它以只读方式安装。从 3.2 开始,可以在清单中指定 SD 写入权限,但 MEDIA 访问仍然受到限制。

于 2011-08-16T09:36:12.533 回答
0

Envronment.getExternalStrorageDirectory()我认为您的意思是“外部”的返回值,对吗?

那么该目录不是“外部”的,可能是 /mnt/sdcard/ 或其他你可以通过 logcat 从上面的函数中获取返回值的东西。

您可以通过“ls /mnt/sdcard/”在 shell 中访问它

于 2011-08-15T11:50:12.453 回答
0

我猜你指的是 sdcard 文件夹。

有些设备只有一个 sdcard,有些 android 设备有内置的 sdcard 并支持额外的所谓的“外部”sdcard。

通常主 sdcard 安装在,/mnt/sdcard而辅助 sdcard(如果支持这种东西)安装在/mnt/sdcard/external_sd. 这个位置没有记录,实际上由设备供应商决定(有时它们是不同的)。


如果您不确定您的设备有哪些 sdcard 挂载点,则可以使用以下命令列出它们:

adb shell mount | grep sdcard

这是我从 Samsung Infusion 4g 得到的输出:

/dev/block/vold/179:1 /mnt/sdcard vfat rw,...
/dev/block/vold/179:9 /mnt/sdcard/external_sd vfat rw,...
tmpfs /mnt/sdcard/external_sd/.android_secure tmpfs ro,...
于 2011-08-15T11:51:53.673 回答
0

获取外部存储的状态以确保其可用:

Environment.getExternalStorageState();

这将返回状态,String然后您可以将其与以下内容进行比较:

- Environment.MEDIA_UNMOUNTABLE
- Environment.MEDIA_REMOVED

……

于 2011-08-15T11:56:06.757 回答