3

我有这样的要求,如果连接到系统的设备的 android sdk 版本高于 2.1,那么它应该采用 sdcard 路径/sdcard,如果设备的版本高于 4.1,那么它应该采用 sdcard 路径/mnt/sdcard

那么如何通过命令行找出连接到系统的设备版本是2.x版本的设备还是4.x版本的设备呢?

4

2 回答 2

9

这将为您提供 Android 设备所需的所有信息。

adb shell cat /system/build.prop

您需要在设备设置中启用 USB 调试。(可选)如果权限被拒绝消息弹出,您可以使用以下

adb root

编辑:

如果您有 AOSP 源代码,您可以查看build/core/version_defaults.mk文件并搜索PLATFORM_VERSION标签以获得确切的 Android 版本。

于 2014-03-27T06:48:25.190 回答
1

我不确定您到底想要什么,但可以将其过滤为两种可能性。

1)您想通过运行模拟器的机器上的命令行确定它正在运行的android版本。如果是这种情况,您要使用以下命令:

adb shell grep ro.build.version.sdk= system/build.prop

这将返回一个数字,您可以使用它来确定 android 版本。请注意,如果您连接了多个仿真器/设备以将其指向特定设备,则可能需要添加 -s 标志。

2)在一个 android 应用程序中,您想要获取 android 版本以确定 sdcard 文件的位置。如果这是您正在寻找的内容,那么您问错了问题,您想知道的是我如何确定 sdcard 在设备上的位置。在这种情况下,答案是:

Environment.getExternalStorageDirectory();

或可在http://developer.android.com/reference/android/os/Environment.html找到的类似方法之一

于 2012-11-10T08:33:29.300 回答