实现屏幕无锁--->当我们开机或者超过锁屏幕时间或按电源键之后屏幕没有锁
的一种状态。
经过查询许多资料以及分析代码,我们可以发现最主要的屏幕功能还是在
framework/base/policy/src/com/android/internal/policy/impl/KeyguardViewManager.java中。
里面有一个handleshow方法: 真正的去锁屏实现
有一个 handlehide方法:真正的去隐藏锁屏实现
1 handleshow方法:private void handleShow() {
synchronized (KeyguardViewMediator.this) {
if (DEBUG) Log.d(TAG, "handleShow");
if (!mSystemReady) return;
playSounds(true);
mKeyguardViewManager.show(); // 显示锁屏界面对应的窗口
mShowing = true; // 锁屏状态 , 即显示锁屏
adjustUserActivityLocked(); // 取消对用户Activity的控制
adjustStatusBarLocked(); //取消对状态栏的控制
try {
ActivityManagerNative.getDefault().closeSystemDialogs("lock");
} catch (RemoteException e) {
}
mShowKeyguardWakeLock.release();
}
}
我们只要将上面注释了的语句注释掉,那么就执行的空的,那样就取消真正的去锁屏实现
2 同理handlehide方法也只要注释mKeyguardViewManager.hide();
mShowing = false;
adjustUserActivityLocked();
AdjustStatusBarLocked()
就可以取消真正的去隐藏锁屏实现。
但是做完以上后仍存在一个Bug(问题),就是唤醒屏幕后,会在指定的时间内屏幕由亮变暗,我们还需要做如下修改:按下POWER键时,解除屏幕由亮变暗的Bug。
在handleWakeWhenReady(int keyCode)方法下注释掉
pokeWakelock(); //按下POWER键时, 解除屏幕由亮变暗的Bug
就可以达到效果了。
最后还有一种方法就是在KeyguardViewManager.java中有一个变量mExternallyEnabled,只要将其初始改为false,需要显示界面(doKeyguard())时都不会继续走下去,也可以达到效果。
分享到:
相关推荐
http://vs130.com/ranklist.html 最新最热门的免费源码下载 发福利,免积分,Android 屏幕锁源码
android九宫锁屏幕解锁
(安卓APP项目源代码)实用源码——Android屏幕锁源码(安卓APP项目源代码)实用源码——Android屏幕锁源码(安卓APP项目源代码)实用源码——Android屏幕锁源码(安卓APP项目源代码)实用源码——Android屏幕锁源码...
安卓app开发项目-实用源码——Android屏幕锁源码(源码).zip安卓app开发项目-实用源码——Android屏幕锁源码(源码).zip安卓app开发项目-实用源码——Android屏幕锁源码(源码).zip安卓app开发项目-实用源码——Android...
HTML5 Android手机屏幕解锁模拟器代码
jquery Android屏幕解锁插件patternlock,插件要求ie8版以上浏览器,演示地址:http://www.jq22.com/jquery-info434
主要介绍了Android开发实现消除屏幕锁的方法,结合实例形式较为详细的分析了Android锁屏的原理及消除屏幕锁的相关操作技巧,需要的朋友可以参考下
基于安卓Android的屏幕锁源码.zip
Android屏幕锁解锁在取证上的应用.pdf
Android应用——屏幕锁源码
Android 屏幕锁源码.rar
Android 屏幕锁源码.zip
Android程序研发源码Android 屏幕锁源码
易语言儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁儿童屏幕锁
Android屏幕锁源码.zip