问题描述
我曾经使用以下 cmd 通过 adb 获取双卡设备的两个 IMEI,并且工作正常。
获取 IMEI 1:
adb shell service call iphonesubinfo 3 | awk -F "'" '{print $2}' | sed '1 d' | tr -d '.' | awk '{print}' ORS=
要获得 IMEI 2:
adb shell service call iphonesubinfo 1 | awk -F "'" '{print $2}' | sed '1 d' | tr -d '.' | awk '{print}' ORS=
但在 S20 Ultra(Android 11)中,我无法使用上述 cmd 获取 IMEI 2。
即使我尝试使用“iphonesubinfo 3 i32 1”和“iphonesubinfo 3 i32 2”,但它返回空。
- 1 - 获取设备 ID
- 2 - getdeviceidForSubscriber
- 3 - getImeiForSubscriber
- 4 - getDeviceSvn
- 5 - getSubscriberId
- 6 - getSubscriberIdForSubscriber
问题:
- 这些转换代码是否针对 android 10 进行了更改?如果是这样,请分享更新以获取 IMEI2。
- 还是由于 s20 Ultra 的 Hybrid sim 插槽导致的?如果是这样,如何获得混合卡插槽的 IMEI 2?
解决方法
得到了答案。尝试使用以下命令为 Android 11 上的混合 SIM 设备获取 IMEI 1 和 IMEI 2
获取 IMEI 1:
adb shell service call iphonesubinfo 4 i32 2 | awk -F "'" '{print $2}' | sed '1 d' | tr -d '.' | awk '{print}' ORS=
要获得 IMEI 2:
adb shell service call iphonesubinfo 4 i32 1 | awk -F "'" '{print $2}' | sed '1 d' | tr -d '.' | awk '{print}' ORS=