Доступ к getDeviceID() для приложения владельца устройства Android 10?

У меня есть много телефонов, которые мне нужно зарегистрировать в базе данных со штрих-кодами IMEI и установить на них приложение компании, чтобы подключиться и отслеживать их. Для этого мне нужно получить доступ к IMEI с помощью getDeviceID(). Начиная с Android 10 все не так просто.

На этой странице Android сообщает, что если вы являетесь владельцем устройства, вы можете получить к нему доступ: https://developer.android.com/training/articles/user-data-ids

Я использую этот метод, чтобы сделать свое приложение приложением владельца устройства: Как сделать мое приложение владельцем устройства?

adb shell dpm set-device-owner com.package.name/.MyDeviceAdminReceiver 

Когда я использую getDeviceId() в приложении, у меня все еще возникает ошибка:

 java.lang.SecurityException: getDeviceId: The user 10180 does not meet the requirements to access device identifiers.

Почему этот метод не работает? Есть ли предложения по IMEI?

1 ответ

Недостаточно установить приложение в качестве владельца устройства, оно также необходимо для завершения процесса подготовки. Для Android до 11 он запускается запускающее ACTION_PROVISION_MANAGED_DEVICE для Android 12 вы должны слушать , чтобы ACTION_GET_PROVISIONING_MODE

Google предоставляет образец DPC.

Другие вопросы по тегам