Android中如何消除屏幕锁
本篇内容主要讲解“Android中如何消除屏幕锁”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Android中如何消除屏幕锁”吧!
真正的去锁屏实现有一个 handlehide方法,真正的去隐藏锁屏实现 handleshow方法:
privatevoidhandleShow(){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(RemoteExceptione){}mShowKeyguardWakeLock.release();}}
我们只要将上面注释了的语句注释掉,那么就执行的空的,那样就取消真正的去锁屏实现
同理handlehide方法也只要注释
mKeyguardViewManager.hide();mShowing=false;adjustUserActivityLocked();AdjustStatusBarLocked()
就可以取消真正的去隐藏锁屏实现。
但是做完以上后仍存在一个Bug(问题),就是唤醒屏幕后,会在指定的时间内屏幕由亮变暗,我们还需要做如下修改:按下POWER键时,解除屏幕由亮变暗的Bug。
在handleWakeWhenReady(int keyCode)
方法下注释掉
pokeWakelock();//按下POWER键时,解除屏幕由亮变暗的Bug
就可以达到效果了。
最后还有一种方法就是在KeyguardViewMediator.java中有一个变量mExternallyEnabled,只要将其初始改为false,需要显示界面(doKeyguard()
)时都不会继续走下去,也可以达到效果。
到此,相信大家对“Android中如何消除屏幕锁”有了更深的了解,不妨来实际操作一番吧!这里是恰卡编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!