OPPO Android11机型使用adb无法读取IMEI仅返回MEID如何解决
OPPO Android 11 设备ADB读取IMEI解决方案
问题根因
Android 11版本起,国产厂商对系统服务接口做了定制化调整,OPPO ColorOS系统修改了iphonesubinfo服务的调用序号映射逻辑,你之前使用的序号1、2实际对应的是MEID读取接口,因此无法返回IMEI信息。
前置操作要求
- 先进入设备开发者选项,开启USB调试和**USB调试(安全设置)**两个选项,后者需要登录OPPO账号验证后才能开启,未开启的情况下高权限系统服务调用会被系统拦截
- 本地ADB工具版本需≥30.0.0,适配Android 11的接口规范
- 连接设备后弹出的USB调试授权弹窗,选择「始终允许该计算机」
读取命令
读取卡槽1 IMEI
直接返回原始结果:adb shell service call iphonesubinfo 3 i32 0
带格式化直接输出可读IMEI(适用于Mac/Linux环境):adb shell service call iphonesubinfo 3 i32 0 | grep -o "'[^']*'" | tr -d "'" | tr -d ' '
读取卡槽2 IMEI
直接返回原始结果:adb shell service call iphonesubinfo 3 i32 1
带格式化直接输出可读IMEI(适用于Mac/Linux环境):adb shell service call iphonesubinfo 3 i32 1 | grep -o "'[^']*'" | tr -d "'" | tr -d ' '
注意事项
- 该方案已在PEAM00(OPPO Reno5 5G)、PEMM20(OPPO A55 5G)的Android 11正式版ColorOS系统上验证可用
- Windows环境无内置grep工具的情况下,可以手动提取返回结果中单引号包裹的字符串,去掉所有空格后即为IMEI值
- 若设备仅插入单张SIM卡,或本身为单卡硬件版本,卡槽2的IMEI返回空属于正常情况
内容的提问来源于stack exchange,提问作者z.eric
相关产品推荐
相关产品推荐

