Как получить информацию IMEI в Andorid 10? - PullRequest
0 голосов
/ 01 октября 2019

До Android 10 я использовал TelePhonyManager API для получения IMEI и информации о серийном номере, но теперь он не работает в Android 10.

Есть ли способ получить информацию о IMEI и серийном номере на Android 10

1 Ответ

1 голос
/ 01 октября 2019

Начиная с Android 10, приложения должны иметь привилегированное разрешение READ_PRIVILEGED_PHONE_STATE, чтобы получить доступ к не сбрасываемым идентификаторам устройства, включая IMEI и серийный номер.

Сторонние приложения, установленные сGoogle Play Store не может объявить привилегированные разрешения.

Если у вашего приложения нет разрешения, и вы все равно пытаетесь запросить информацию о не сбрасываемых идентификаторах, ответ платформы зависит от целевой версии SDK:

  • Если ваше приложение предназначено для Android 10 или выше, возникает исключение SecurityException.
  • Если ваше приложение предназначено для Android 9 (уровень API 28) или ниже, метод возвращает нулевые данные или данные-заполнители, еслиПриложение имеет разрешение READ_PHONE_STATE. В противном случае возникает исключение SecurityException.

Если вы пытаетесь получить к нему доступ, выдается ниже исключения

java.lang.SecurityException: getImeiForSlot: The user 10180 does not meet the requirements to access device identifiers. ```
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...