我们所有人都必须在“设备管理员”下看到管理员列表。
他们可以执行特殊任务。
任何想法如何创建可成为设备管理员的应用程序?
这只是一项研究,不要紧张!
答案 0 :(得分:8)
Android开发者文档中的Device Administration guide深入介绍了该过程。
在较高的层面上,步骤是:
DeviceAdminReceiver
并在清单中注册ACTION_ADD_DEVICE_ADMIN
操作启动Intent,并将您的接收方作为DevicePolicyManager.EXTRA_DEVICE_ADMIN,
附加内容传递。用户以设备管理员身份接受设备后,您可以在应用程序中执行一组有限的设备管理操作。
答案 1 :(得分:1)
您需要研究更多信息this文档或device management policies
答案 2 :(得分:0)
你需要做三件事:
<receiver>
添加到 AndroidManifest<device-admin>
制作新的 xml 文件DeviceAdminReceiver
制作新的 .kt 文件示例:
在 AndroidManifest.xml 中(在 <activity>
中,添加以下代码):
<receiver
android:name=".MyDeviceAdminReceiver"
android:description="@string/app_name"
android:label="@string/app_name"
android:permission="android.permission.BIND_DEVICE_ADMIN">
<meta-data
android:name="android.app.device_admin"
android:resource="@xml/device_owner_receiver" />
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
</intent-filter>
</receiver>
在device_owner_receiver.xml中,添加以下代码:
<?xml version="1.0" encoding="utf-8"?>
<device-admin>
<uses-policies>
<limit-password />
<watch-login />
<reset-password />
<force-lock />
<wipe-data />
<expire-password />
<encrypted-storage />
<disable-camera />
</uses-policies>
</device-admin>
在MyDeviceAdminReceiver.kt中,添加以下代码:
class MyDeviceAdminReceiver : DeviceAdminReceiver() {
override fun onEnabled(context: Context, intent: Intent) {
super.onEnabled(context, intent)
Toast.makeText(context, "Admin is enabled", Toast.LENGTH_SHORT).show()
}
}
在顶部添加代码后运行应用时,应用会提示管理员请求。