全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android开发实现消除屏幕锁的方法

本文实例讲述了Android开发实现消除屏幕锁的方法。分享给大家供大家参考,具体如下:

实现屏幕无锁--->当我们开机或者超过锁屏幕时间或按电源键之后屏幕没有锁的一种状态。

经过查询许多资料以及分析代码,我们可以发现最主要的屏幕功能还是在framework/base/policy/src/com/android/internal/policy/impl/KeyguardViewMediator.java中。

里面有一个handleshow方法:

真正的去锁屏实现有一个 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相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。


# Android  # 消除  # 屏幕锁  # Android8.1原生系统网络感叹号消除的方法  # Android实现文字动态高亮读取进度效果  # Android 实现文字左右对齐  # Android基于AdapterViewFlipper实现的图片/文字轮播动画控件  # Android获取文字高度的三种方法  # Android Button按钮点击背景和文字变化操作  # Android实现文字滚动播放效果的代码  # Android实现文字下方加横线  # android命令行模拟输入事件(文字、按键、触摸等)  # Android实现文字消除效果  # 变暗  # 按下  # 有一个  # 进阶  # 是在  # 相关内容  # 以达到  # 中有  # 会在  # 将其  # 也可  # 感兴趣  # 我们可以  # 时间内  # 要做  # 给大家  # 就可  # 当我们  # 要将  # 最主要 


相关文章: c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  郑州企业网站制作公司,郑州招聘网站有哪些?  如何在阿里云服务器自主搭建网站?  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  Python如何创建带属性的XML节点  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  如何通过万网虚拟主机快速搭建网站?  ,如何利用word制作宣传手册?  如何快速登录WAP自助建站平台?  Python lxml的etree和ElementTree有什么区别  html制作网站的步骤有哪些,iapp如何添加网页?  建站之星北京办公室:智能建站系统与小程序生成方案解析  建站主机是否等同于虚拟主机?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  如何快速生成可下载的建站源码工具?  建站之星导航如何优化提升用户体验?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  建站之星云端配置指南:模板选择与SEO优化一键生成  上海网站制作开发公司,上海买房比较好的网站有哪些?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  如何获取上海专业网站定制建站电话?  如何解决ASP生成WAP建站中文乱码问题?  建站主机类型有哪些?如何正确选型  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  浅析上传头像示例及其注意事项  营销式网站制作方案,销售哪个网站招聘效果最好?  如何挑选优质建站一级代理提升网站排名?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何通过wdcp面板快速创建网站?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  PHP 500报错的快速解决方法  如何自定义建站之星模板颜色并下载新样式?  如何快速生成凡客建站的专业级图册?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  微信小程序 五星评分(包括半颗星评分)实例代码  南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?  Swift中swift中的switch 语句  如何基于PHP生成高效IDC网络公司建站源码?  常州企业建站如何选择最佳模板?  建站之星导航配置指南:自助建站与SEO优化全解析  如何在景安服务器上快速搭建个人网站?  成都网站制作价格表,现在成都广电的单独网络宽带有多少的,资费是什么情况呢?  高端网站建设与定制开发一站式解决方案 中企动力  定制建站哪家更专业可靠?推荐榜单揭晓  红河网站制作公司,红河事业单位身份证如何上传? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。