Adb shell dumpsys iphonesubinfo не работает с Android 5.0 Lollipop

Мы использовали идентификатор устройства / IMEI, используя следующую команду:

adb shell dumpsys iphonesubinfo 

Но с момента последнего обновления Android (5.0 – Lollilop) эта команда ничего не возвращает, я выполнил этот тест как на Nexus 4, так и на Nexus 5.

Я знаю, что могу получить IMEI из кода, который все еще работает, но есть ли у кого-нибудь обходной путь для АБР?

Вы всегда можете просто использовать команду вызова service call для вызова методов службы.

Вот iphonesubinfo услуги iphonesubinfo в android-5.0.0_r1 :

  1 getDeviceId 2 getDeviceIdForSubscriber 3 getImeiForSubscriber 4 getDeviceSvn 5 getSubscriberId 6 getSubscriberIdForSubscriber 7 getGroupIdLevel1 8 getGroupIdLevel1ForSubscriber 9 getIccSerialNumber 10 getIccSerialNumberForSubscriber 11 getLine1Number 12 getLine1NumberForSubscriber 13 getLine1AlphaTag 14 getLine1AlphaTagForSubscriber 15 getMsisdn 16 getMsisdnForSubscriber 17 getVoiceMailNumber 18 getVoiceMailNumberForSubscriber 19 getCompleteVoiceMailNumber 20 getCompleteVoiceMailNumberForSubscriber 21 getVoiceMailAlphaTag 22 getVoiceMailAlphaTagForSubscriber 23 getIsimImpi 24 getIsimDomain 25 getIsimImpu 26 getIsimIst 27 getIsimPcscf 28 getIsimChallengeResponse 29 getIccSimChallengeResponse 

Большинство методов требуют root . Но, к счастью, getDeviceId (тот, который вам нужен для IMEI / MEID устройства).

Прочтите услуги Android для Android из оболочки ADB для получения более подробной информации.

Я согласен с alex P и jeremy, мы можем получить телефон IMEI по вызову службы, но это приводит к пакету, который сложно увидеть после столь большого количества жонглирования с помощью cmd, поскольку я не программист, я нашел решение получить IMEI в одиночку и решил поделиться им Поскольку это может помочь многим. Поэтому вот сценарий, который я сделал для получения IMEI от lollypop 5.1, и он работает с ненарушенными телефонами

 @echo off setlocal enabledelayedexpansion for /f "tokens=6*" %%a in ('adb shell "service call iphonesubinfo 1 ^| grep -m 1 \"'\""') do ( set imei1=%%a) for /f "tokens=6*" %%b in ('adb shell "service call iphonesubinfo 1 ^| grep -m 2 \"'\""') do ( set imei2=%%b) for /f "tokens=4*" %%c in ('adb shell "service call iphonesubinfo 1 ^| grep -m 3 \"'\""') do ( set imei3=%%c) set imei=!imei1!!imei2!!imei3! echo !imei! > imei.txt for /f "delims=" %%d in (imei.txt) do ( set DeviceIMEI=%%d set DeviceIMEI=!DeviceIMEI:'=! set DeviceIMEI=!DeviceIMEI:.=! set OIMEI=Phone IMEI !DeviceIMEI! ) echo %OIMEI% pause 

Это приведет к «Phone IMEI», независимо от того, какой телефон IMEI есть »* * помните, что он будет показывать только imei sim-порт, который по умолчанию установлен для вызова. Если кто-то может сократить этот скрипт, это было бы здорово.

IMEI для sim 1

 adb shell service call iphonesubinfo 1 | awk -F "'" '{print $2}' | sed '1 d' | tr -d '.' | awk '{print}' ORS= 
Intereting Posts
Youtube Загрузите список видео. Ошибка FileNotFound Spinner вызывает ошибку при использовании пользовательского стиля Рисование прямоугольника с помощью жестов перемещения Можно добавлять элементы ListView без использования адаптера? Слишком громоздкий для отображения статического массива Как проверить кодовое имя устройства Android? TextView для отображения подсказки перед вводом текста Значок устаревшего изображения не отображается при использовании адаптивного значка Плагин Android с API Google Fitness для Unity3D Как отделить основную деятельность и выбор даты до собственных классов Void getter, который изменяет параметр Android: добавить шрифт helvetica neue в приложение Обновление IntelliJ до версии 10.5 и Android не сработает Android SDK не указан Android-приложение показывает черные границы, перекрывающие края пользовательского интерфейса – какой-то режим совместимости? IllegalStateException вызывает MediaPlayer.reset () Android WebView – сглаживание / изменения