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

的一种状态。

经过查询许多资料以及分析代码,我们可以发现最主要的屏幕功能还是在

framework/base/policy/src/com/android/internal/policy/impl/KeyguardViewMediator.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     
就可以达到效果了。

最后还有一种方法就是在KeyguardViewMediator.java中有一个变量mExternallyEnabled,只要将其初始改为false,需要显示界面(doKeyguard())时都不会继续走下去,也可以达到效果。

android消除屏幕锁相关推荐

  1. Android 解屏幕锁与点亮屏幕(来电时效果)

    当Android手机(应该是所有的手机都这样)收到短信或者电话时,会自动点亮屏幕,解开屏幕锁,以方便用户即时操作,下面用代码来实现这一功能: PowerManager pm=(PowerManager ...

  2. android基础--屏幕锁

    九宫格 PIN密码 密码锁屏      自从:API Level 8 (Android 2.2) 开始, Android提供了DevicePolicyManager类, 可以让你的应用程序也能执行屏幕 ...

  3. Android下屏幕锁屏弹窗的正确姿势

    最近在做一个关于屏幕锁屏悬浮窗的功能,于是在网上搜索了很多安卓屏幕锁屏的相关资料,鉴于网上的资料比较零碎,所以我在这里进行整理总结.本文将从以下两点对屏幕锁屏进行解析: 1. 如何监听系统屏幕锁屏 2 ...

  4. Android手机屏幕锁屏监测

    手机屏幕锁屏和解锁都是会发广播出来的,我们只要用BroadcaseReceiver来监听相应的Action即可, public void onCreate(final Bundle savedInst ...

  5. android手机可以设置屏幕锁定,安卓手机屏幕锁设置方法(九个点图案)

    这里以三星S5368手机屏幕锁为例 随着三星S5368手机系统功能愈来愈完善,性能愈来愈强劲,越来越多的三星S5368用户们都喜欢把一些重要的信息甚至隐私放在三星S5368手机里面,但是这就有可能会让 ...

  6. Android关闭屏幕时不锁屏

    Android关闭屏幕时不锁屏 权限 <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/ ...

  7. android app防止锁屏_Android 禁止屏幕休眠和锁屏的方法

    常常我们开 发程序的时候我们不需要系统唤醒系统锁屏功能,比如我们在做xxxNowTV或XXX播放器这样的程序,用户有时候在看电视或视频的时候不希望系统的锁屏 功能启动,既不想锁频,然而系统却在我们看电 ...

  8. android app防止锁屏_Android 禁止屏幕休眠和锁屏的方法 | 学步园

    Introduction 常常我们开 发程序的时候我们不需要系统唤醒系统锁屏功能,比如我们在做xxxNowTV或XXX播放器这样的程序,用户有时候在看电视或视频的时候不希望系统的锁屏 功能启动,既不想 ...

  9. android屏幕解锁图案,安卓手机图案屏幕锁解锁方法!!

    当你的安卓手机密码锁忘记了怎么办?今天一不小心把手机改了图案锁结果由于改的时候匆忙结果忘记了,在网上找了好多方法都无果,也有人说重新刷机就会好!!这个简直就是废话,刷机当然能好了!! 关键是解锁要解决 ...

最新文章

  1. 【代数结构】群 ( 群的定义 | 群的基本性质 | 群的证明方法 | 交换群 )
  2. C++(七)——多态
  3. html考眼力游戏,史上最考眼力的猜图游戏:点亮最野足迹
  4. 多服务监听Redis key失效通知,并指定特定机器进行处理业务
  5. 解决“/dev/mapper/centos-root 100%”满了
  6. [Java] 蓝桥杯ADV-209 算法提高 c++_ch02_04
  7. java for循环效率优化_java 优雅代码for循环 之性能调优
  8. 袁承兴:【译】Async/Await(一)——多任务
  9. 商品的SPU与SKU的区别
  10. Houdini10:灯光
  11. 【图像去噪】基于自适应布谷鸟算法优化维纳滤波器实现多光谱图像去噪附matlab代码
  12. 一文彻底搞懂激光雷达原理!
  13. 966. 元音拼写检查器
  14. 基于echarts 24种数据可视化展示,填充数据就可用,动手能力强的还可以DIY(演示地址+下载地址)
  15. Day27~Day32
  16. oracle数据库基本命令使用汇总
  17. Kettle--java代码组件实现密码加密(BCryptPasswordEncoder)
  18. [转载]软件常见的各种版本英文缩写
  19. 基于案例的软件构造教程学期大作业-100以内的加减法
  20. 所在地区级别_在人所在的地方

热门文章

  1. Vue 解决文字闪动
  2. 告诉你自动化成交秘诀发帖软件
  3. 对数周期天线hfss建模_HFSS软件二次开发在对数周期天线设计中的应用
  4. 第一章、安装、登录CentOS7
  5. 去掉迅雷新闻和资源信息的方法
  6. VS2019 c# 中国移动云mas平台 webservice实现
  7. excel 批量替换换行符
  8. 【Charles接口请求批量导出】
  9. STK | 绘制卫星轨迹
  10. 几何画板工具箱的具体使用方法