android - 通过 adb 获取 sdcard 目录

标签 android adb sd-card

我正在制作一个应用程序,它通过 adb 从设备 sdcard 中提取文件(由 android 应用程序保存)。 问题是不同的设备,有不同的sdcard目录

即:

  • SD卡
  • sdcard/external_sd

首先我发明了以下解决方案:

  1. 运行 adb shell
  2. ls
  3. 检查目录“sdcard”是否存在
  4. 如果是,运行 sdcard/ls 并检查 external_sd 是否存在
  5. 返回值。

但问题是我有两个三星设备 GT-I9100GT-I9000 并且都有一个目录 sdcard/external_sd。当我检查 System.getenv("EXTERNAL_STORAGE") 时,一个返回 sdcard 和另一个 sdcard/external_sd。我需要提取以前保存到 System.getenv("EXTERNAL_STORAGE").

的文件

So the question is: is there any command to get sdcard directory directly from adb, without access to Android code?

Or maybe I can start activity with adb's am start, and get return value? Is this possible?

编辑: 找到解决方案:

adb shell echo $EXTERNAL_STORAGE

最佳答案

对于它的值(value) - 使用 $EXTERNAL_STORAGE 变量可能会给您带来误导性的结果。 我这里有一个 HP Slate 平板电脑,它的 EXTERNAL_STORAGE 变量设置为/storage/sdcard0 。 然而,当在 shell 上使用 df (disk free) 命令,甚至使用 mount 命令来显示可用空间或挂载时,以下内容变得很明显:

shell@android:/ $ df
Filesystem             Size   Used   Free   Blksize
/dev                  452.7M  36.0K  452.7M   4096
/mnt/asec             452.7M  0.0 K  452.7M   4096
/mnt/obb              452.7M  0.0 K  452.7M   4096
/system               629.9M  468.5M  161.5M   4096
/data                 5.7 G  2.3 G  3.5 G   4096
/cache                435.9M  16.4M  419.5M   4096
/storage/sdcard0      5.7 G  2.3 G  3.5 G   4096
/mnt/external_sd      29.3G  64.0K  29.3G   32768

所以,外部sd卡实际上是/mnt/external_sd,而不是EXTERNAL_STORAGE返回的值(即内部存储)

关于android - 通过 adb 获取 sdcard 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9374628/

相关文章:

android - 如何通过 ADB 找到 WiFi 网络共享状态?

java - 通话/连接到 Android 上的安全元素小程序 micro sd?

android - 网页 View 中的字体没有改变

android - Scribe OAuth 无法在 Android 上运行,错误 500

android - 与 adb shell 中的 linux tree 命令类似的命令

安卓工作室 : "Waiting for device." Trying to run app on phone

android - 如何永久删除SD卡上的数据

linux - Class 4 SDHC 与 Class 10 SDHC 卡

Android Studio 2.2 Preview 缺少所有屏幕尺寸

android - Logback-Android : "no applicable action" error when using FixedWindowRollingPolicy with a SizeBasedTriggeringPolicy