Alo*_*rni 10 android device-admin android-4.3-jelly-bean
我正在使用更新到4.3的Nexus 7.我有一个应用程序需要设备管理员权限锁定/擦除设备.我已将设备管理权限授予我在所有者资料上的应用程序.因此,当我切换到另一个用户配置文件时,我可以在设备管理应用列表中看到我的应用程序.但是当我在这个非所有者用户配置文件上给出一个Lock命令时,我得到的异常是"java.lang.SecurityException:uid XXXXXX没有活动的admin".
DevicePolicyManager isActiveAdmin()方法在此配置文件上也返回true,但仍然无法执行操作并导致应用程序崩溃.
我假设一旦设备管理员设置为所有者用户配置文件,它会自动应用于所有其他用户配置文件.任何想法,然后为什么会发生这种情况?此外,是否有任何文档指出我的应用程序应该采取什么谨慎措施,以便在我的应用程序需要设备管理员权限时处理多个用户配置文件
您是否在device_admin_sample.xml中设置了哪些管理员政策符合您的应用预期行为?
将管理参数设置为
android:label="@string/enterprise_device_admin"
android:permission="android.permission.BIND_DEVICE_ADMIN">
android:resource="@xml/enterprise_device_admin" />
Run Code Online (Sandbox Code Playgroud)
以下是文件device_admin_sample.xml的典型内容:
<activity android:name=".app.DeviceAdminSample"
android:label="@string/activity_sample_device_admin">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.SAMPLE_CODE" />
</intent-filter>
</activity>
<receiver android:name=".app.DeviceAdminSample$DeviceAdminSampleReceiver"
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>
Run Code Online (Sandbox Code Playgroud)
进一步阅读一步一步的说明,也值得检查:
| 归档时间: |
|
| 查看次数: |
568 次 |
| 最近记录: |