Невозможно программно установить владельца устройства - PullRequest
0 голосов
/ 07 апреля 2020

Я попытался выполнить следующий код, чтобы установить мое приложение в качестве владельца устройства. Я не могу использовать ADB, потому что у меня более 10K android -9 нерутированных устройств. Итак, нужно сделать это программно.

   String name = AdminReceiver.class.getName();
   if (name.startsWith(BuildConfig.APPLICATION_ID)) {
           name = name.substring(BuildConfig.APPLICATION_ID.length());
   }
   final String command = "dpm set-device-owner " + BuildConfig.APPLICATION_ID + '/' + name;
   Process process = Runtime.getRuntime().exec(command);
   Log.d(TAG,"RETURN VALUE:"process.waitFor();

process.waitFor () всегда возвращает 1.

Ответы [ 2 ]

2 голосов
/ 07 апреля 2020

Нужно сделать это программно

К счастью, это невозможно по ослепительно очевидным причинам безопасности.

0 голосов
/ 21 апреля 2020

Вместо этого используйте QR Enrollment!

Вы можете сгенерировать QR-код, содержащий URL-адрес для вашего пакета владельца устройства. Затем вы можете отсканировать этот код в процессе заводской настройки устройства.

См. Документацию здесь

Данные в QR-коде будут выглядеть примерно так:

{
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME": "com.google.android.apps.work.clouddpc/.receivers.CloudDeviceAdminReceiver",
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM": "I5YvS0O5hXY46mb01BlRjq4oJJGs2kuUcHvVkAPEXlg",
    "android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION": "https://play.google.com/managed/downloadManagingApp?identifier=setup"
}

Просто замените информацию информацией о пакете владельца своего устройства. После сканирования устройство загрузит, установит и настроит владельца устройства.


Если вы станете партнером EMM в Google, вы даже сможете выполнить Zero-Touch-Enrollment, предварительно настроив android устройства от производителей. Но Google прекратил утверждать запросы для пользовательских менеджеров политик устройств, и вы должны сейчас использовать Android API управления.


Сноски

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...