十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Android中怎么消除屏幕锁,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
成都创新互联专注于陇南企业网站建设,成都响应式网站建设,成都商城网站开发。陇南网站建设公司,为陇南等地区提供建站服务。全流程按需搭建网站,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务
真正的去锁屏实现有一个 handlehide方法,真正的去隐藏锁屏实现 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(); } }
我们只要将上面注释了的语句注释掉,那么就执行的空的,那样就取消真正的去锁屏实现
同理handlehide方法也只要注释
mKeyguardViewManager.hide(); mShowing = false; adjustUserActivityLocked(); AdjustStatusBarLocked()
就可以取消真正的去隐藏锁屏实现。
但是做完以上后仍存在一个Bug(问题),就是唤醒屏幕后,会在指定的时间内屏幕由亮变暗,我们还需要做如下修改:按下POWER键时,解除屏幕由亮变暗的Bug。
在handleWakeWhenReady(int keyCode)
方法下注释掉
pokeWakelock(); //按下POWER键时, 解除屏幕由亮变暗的Bug
就可以达到效果了。
最后还有一种方法就是在KeyguardViewMediator.java中有一个变量mExternallyEnabled,只要将其初始改为false,需要显示界面(doKeyguard()
)时都不会继续走下去,也可以达到效果。
关于Android中怎么消除屏幕锁问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。