我有这样的要求,如果连接到系统的设备的 android sdk 版本高于 2.1,那么它应该采用 sdcard 路径/sdcard
,如果设备的版本高于 4.1,那么它应该采用 sdcard 路径/mnt/sdcard
。
那么如何通过命令行找出连接到系统的设备版本是2.x版本的设备还是4.x版本的设备呢?
我有这样的要求,如果连接到系统的设备的 android sdk 版本高于 2.1,那么它应该采用 sdcard 路径/sdcard
,如果设备的版本高于 4.1,那么它应该采用 sdcard 路径/mnt/sdcard
。
那么如何通过命令行找出连接到系统的设备版本是2.x版本的设备还是4.x版本的设备呢?
这将为您提供 Android 设备所需的所有信息。
adb shell cat /system/build.prop
您需要在设备设置中启用 USB 调试。(可选)如果权限被拒绝消息弹出,您可以使用以下
adb root
编辑:
如果您有 AOSP 源代码,您可以查看build/core/version_defaults.mk文件并搜索PLATFORM_VERSION标签以获得确切的 Android 版本。
我不确定您到底想要什么,但可以将其过滤为两种可能性。
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找到的类似方法之一