可以从非管理员应用程序调用DevicePolicyManager.lockNow()吗?

时间:2017-07-11 16:03:52

标签: android device-admin

这些文档记录了来自管理员应用的lockNow()

https://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#lockNow(int)

http://blogs.quovantis.com/android-device-administration-apis/

基本过程是:

  1. 创建DeviceAdminReceiver

  2. 在清单中注册接收方,并为其提供DEVICE_ADMIN_ENABLED操作

  3. 在xml文件中声明安全策略

  4. DevicePolicyManager方法中初始化onCreate()个对象

  5. 致电DevicePolicyManager.lockNow()

  6. 这很有效。但是,我希望能够通过调用lockNow()作为隐含意图来锁定屏幕而不使我的应用程序成为管理员。这可能吗?

1 个答案:

答案 0 :(得分:1)

只有具有正确权限的设备管理员才能调用该API。

鉴于此,你必须:

  1. 创建一个具有USES_POLICY_FORCE_LOCK权限的设备管理员应用,并根据您选择的意图触发。
  2. 使用USES_POLICY_FORCE_LOCK权限使您的现有应用成为设备管理员。
  3. 查找符合这些要求的现有应用。但我对任何人都不熟悉。