首页 > 解决方案 > 仅通过 ADB 获取旧华为型号的 IMEI

问题描述

我需要一点帮助。我有一个华为 g6-l11(Android 4.3),我试图通过 ADB 从中提取 IMEI。我知道这个设备很古老,但这是我的任务之一。到目前为止,我已经尝试了在互联网上可以找到的所有内容,例如:

1)adb shell getprop | grep "<IMEI>"

2) adb shell service call iphonesubinfo N | grep "<IMEI>"- 其中 N 是 1 到 50 之间的数字

3)adb shell settings get secure android_id

4)adb shell content query --uri content://settings/secure | grep "<IMEI>"

5)adb shell content query --uri content://settings/system | grep "<IMEI>"

6)adb shell content query --uri content://settings/global | grep "<IMEI>"

7)adb shell dumpsys | grep "<IMEI>"

所以我制作了一个 Android 应用程序并在智能手机上运行这段代码:

val tm = this.getSystemService(Context.TELEPHONY_SERVICE) as TelephonyManager
Log.d("Emy_","The IMEI is ${tm.deviceId}")

效果很好,但是当我需要做同样的事情但只能通过 ADB 时,它是一个 Android 应用程序。

此外,我还找到了一个可以帮助我的fastboot 命令fastboot oem get-psid(例如:) 。但问题是我需要将手机重新启动到快速启动模式。这花费了太长时间。

我的问题是:

1)为什么操作系统版本低于Marshmallow的华为机型提取IMEI不一样?

2)如何复制Java代码完成的函数调用,以在终端中使用ADB完成?或者换句话说,您会向我推荐哪些其他命令来尝试提取 IMEI?

标签: androidadbhuawei-mobile-services

解决方案


您可以在屏幕上显示它:

adb am start -a android.intent.action.CALL -d tel:*%2306%23

推荐阅读