Блокировка устройства с помощью DeviceAdminReceiver - PullRequest
6 голосов
/ 15 декабря 2010

Я пытаюсь заблокировать устройство с помощью DeviceAdminReceiver и попытаться включить администрирование следующим образом:

if (!mDPM.isAdminActive(mDeviceAdminSample)) {
  Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN)
  intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mDeviceAdminSample);
  intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "Additional text explaining why this needs to be added.");   startActivity(intent);
 }

и получая ошибку примерно так:

ERROR / Error (1022): java.lang.SecurityException: нет активного admin принадлежит uid 10045 для политики # 3

Пожалуйста, дайте мне несколько решений для кода и как включить разрешение администратора.

Ответы [ 2 ]

8 голосов
/ 25 января 2011

Судя по вашему сообщению об ошибке, возможно, вы забыли установить device_admin_sample.xml для запроса политики, которую вы хотите использовать.

Например, если в вашем AndroidManifest.xml есть следующий получателькод для DeviceAdminSample.

<receiver android:name=".app.DeviceAdminSample"
          android:label="@string/sample_device_admin"
          android:description="@string/sample_device_admin_description"
          android:permission="android.permission.BIND_DEVICE_ADMIN">
    <meta-data android:name="android.app.device_admin"
               android:resource="@xml/device_admin_sample" />
    <intent-filter>
        <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
    </intent-filter>
</receiver>

Затем убедитесь, что вы также установили для device_admin_sample.xml следующий XML, чтобы вы могли использовать все возможности администратора устройства.

<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
  <uses-policies>
    <limit-password />
    <watch-login />
    <reset-password />
    <force-lock />
    <wipe-data />
  </uses-policies>
</device-admin>
4 голосов
/ 26 июля 2011

Лучший учебник по администрированию устройства: http://rootfs.wordpress.com/2010/09/09/android-make-your-application-a-device-administrator/

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