如何通过代码远程解锁android手机
我写了一个应用程序,远程lockingandroid手机。 那就是当一个特殊的代码从服务器发送,然后应用程序locking手机基于特殊的代码。 这是我正在使用的代码。
if (!mDPM.isAdminActive(mDeviceAdminSample)) { // try to become active – must happen here in this activity, to get result Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,mDeviceAdminSample); intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,"Admin is added to do security operation."); startActivityForResult(intent, 0); } else { // Already is a device administrator, can do security operations now. mDPM.lockNow(); }
上面的代码正在工作,它locking了手机。
我可以通过从软键盘input密码来解锁手机。 有什么办法通过代码解锁它?
我的问题是如何通过代码解锁手机(这种解锁应该以我解释的locking方式远程完成)
我相信你不能覆盖内置的屏幕锁,除非你自己的设备像三星和HTC做。 然而,通过让你的客户使用你自己的屏幕locking式的应用程序,你可能会实现你想要做的。
我不认为你的远程解锁目标是可以实现的。
Android设置的方式是,许多应用程序可能具有设备pipe理员权限,任何设备pipe理员都可以发出locking命令,但解锁必须来自用户。
我可以build议一件事情,你简化这个:你的应用程序可以尝试删除密钥锁密码,然后用户可以简单地通过在屏幕上滑动手指没有代码使用该设备。
如果您的应用程序不是唯一的设备pipe理员,那么现在就有一个障碍了。 在这种情况下,其他pipe理员应用程序可以设置一个最小密码长度(或其他密码限制),这将阻止您的应用程序清除屏幕locking密码。
如果您的目标是帮助忘记了他/她的屏幕locking密码的用户,那么您的服务器可以发明一个新的密码,通知用户新密码是什么,并将新密码发送到您的应用程序,您的应用程序可以应用密码。 用户可以解锁手机。 别担心,它不像听起来那么复杂。
抱歉写下 – 没有办法从代码解锁手机。 如果您发现任何方式做 – 不保证工作。 所以没有办法远程解锁,编写自定义锁屏等
您需要使用mDPM.resetPassword(“”,0)
当设置密码string为“”时,当前密码被replace为空值并且屏幕locking消失。
尝试这个
KeyguardManager manager = (KeyguardManager)context.getSystemService(KEYGUARD_SERVICE); kl = manager.newKeyguardLock("my-remote-app"); kl.disableKeyguard();
//用于在退出时重新启用键盘锁(如果需要)
onDestroy() { kl.reenableKeyguard(); }
这工作<= ICS。 这是一个弃用的API,他们build议你使用WindowManager中的标志来达到类似的效果。 尽pipe我无法使用WindowManger生成类似的效果。
希望这可以帮助,
请注意,我不是Android开发者,但是:
如果你看看这个 ,看起来你可以让WindowManager在你拥有合适的权限的情况下解雇这个关键的后卫,即使你处于“安全locking”模式。
据我所知,我们不能解锁密码保护电话编程。
一个解决办法是写一个“自定义锁屏”。 当然,这不是最简单的方法,但它会工作,因为你可以用你自己的锁屏做你想做的一切。 如果您正在考虑解决scheme,请随时与我联系,我会给你一些有用的链接。 干杯!