80,362
社区成员
发帖
与我相关
我的任务
分享
KeyguardManager.KeyguardLock keyguardLock;
PowerManager.WakeLock mWakelock;
keyguardManager = ((KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE));
keyguardLock = keyguardManager.newKeyguardLock("TEST");
/**
* 解锁键盘
*/
public void disableKeygrard()
{
keyguardLock.disableKeyguard();
return true;
}
/**
* 锁定键盘
*/
public void reenableKeyguard()
{
keyguardLock.reenableKeyguard();
}
/**
* 得到唤醒锁
*/
private void lock()
{
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
if(mWakelock == null)
{
mWakelock = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_DIM_WAKE_LOCK, "XYTEST");
mWakelock.acquire();
}
}
/**
* 释放唤醒缩
*/
private void unLock()
{
if (mWakelock != null)
{
mWakelock.release();
mWakelock = null;
}
}
// 下面是解锁操作
public void open()
{
lock();
disableKeygrard();
// 事件处理.....
reenableKeyguard();
unLock();
}