开发后台服务的时候经常需要对屏幕状态进行判断,如果是想要监听屏幕解锁事件,可以在配置里面注册action为android.intent.action.USER_PRESENT的广播,则可以监听解锁事件。但有时候,在后台执行某个操作时,需要主动判断屏幕的状态,比如是否是亮着的,可以使用PowerManager的isScreenOn方法进行判断,比如屏幕是否开启了自动旋转等。

注册监听解锁广播:

<receiver android:name="com.home.testscreen.MyReceiver"><intent-filter><action android:name="android.intent.action.USER_PRESENT" /></intent-filter></receiver>

MyReceiver:

package com.home.testscreen;import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;public class MyReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {// 解锁if (intent != null&& Intent.ACTION_USER_PRESENT.equals(intent.getAction())) {Toast.makeText(context, "屏幕已解锁", Toast.LENGTH_SHORT).show();}}}

主动判断屏幕是否亮着:

 public boolean isScreenOn(Context context) {PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);if (pm.isScreenOn()) {return true;}return false;}

判断是否开启了重力感应:

 /*** 是否开启了重力感应* @param context* @return*/public boolean screenIsOpenRotate(Context context) {int gravity = 0;try {gravity = Settings.System.getInt(context.getContentResolver(),Settings.System.ACCELEROMETER_ROTATION);} catch (SettingNotFoundException e) {e.printStackTrace();}if (gravity == 1) {return true;}return false;}

监听屏幕解锁和判断屏幕状态相关推荐

  1. Android监听手机屏幕解锁和判断屏幕状态

    开发后台服务的时候经常需要对屏幕状态进行判断,如果是想要监听屏幕解锁事件,可以在AndroidManifest配置里面注册action为 android.intent.action.USER_PRES ...

  2. Android监听屏幕解锁和判断屏幕状态

     开发后台服务的时候经常需要对屏幕状态进行判断,如果是想要监听屏幕解锁事件,可以在配置里面注册action为 android.intent.action.USER_PRESENT的广播,则可以监听 ...

  3. ios 获取是否静音模式_如何监听iOS设备静音按钮的状态

    通过使用指定方式播放一段极小音频,比较播放的开始和完成时间,来判断当前静音按钮的状态. 我也针对常见的对音量方面的需求做了一个小工具,欢迎大家使用.指正. 2018年9月6日更新: 1.[修正]--A ...

  4. 查看oracle监听服务状态,(总结)Oracle监听服务lsnrctl参数及查询状态详解

    lsnrctl命令常用参数详解: lsnrctl start 启动指定的监听器 stop 关闭指定的监听器 status 显示监听器的状态.status命令显示监听器是不是活动的,日志与跟踪文件的位置 ...

  5. 二、Vue基础语法学习笔记——事件监听v-on、条件判断(v-if、v-else-if、v-else、v-show)、循环遍历(v-for遍历数组对象,key属性、检测数组更新)、图书案例、双向绑定

    四.事件监听 在前端开发中,我们需要经常和用于交互. 这个时候,我们就必须监听用户发生的时间,比如点击.拖拽.键盘事件等等 在Vue中如何监听事件呢?使用v-on指令 v-on介绍 作用:绑定事件监听 ...

  6. oracle 如何查看监听,[转载]查看oracle监听器的状态及打开监听器服务

    检查监听器状态: C:>lsnrctlstatus LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 30-6月 -20 ...

  7. 微博字数监听、昵称长度判断

    监听微博字数 1.    //微博文字长度判断 public static double  weiboTextLength(String text){         double len = 0; ...

  8. Oracle监听服务lsnrctl参数及查询状态详解

    lsnrctl命令常用参数详解: lsnrctl start 启动指定的监听器 stop 关闭指定的监听器 status 显示监听器的状态.status命令显示监听器是不是活动的,日志与跟踪文件的位置 ...

  9. html5监听动画结束,js判断css动画是否完成 animation,transition

    气死了,发现这些鸟人讲事情都讲一半,害死初学者. css动画有两种,animation,transition,所以分开来讲. 1.animation: css定义 #left1{} html定义: 安 ...

最新文章

  1. JQuery笔记(二)jq常用方法animate()
  2. tableau必知必会之学做时尚的环状条形图(跑道图)
  3. POJ 1741 Tree(点分治)
  4. 玩法与叙事撕裂许久,3A与暴力却难分难舍
  5. 1017. A除以B (20)
  6. link、symlink、readlink、unlink函数的使用
  7. 计算机三级信息管理技术考试大纲
  8. 希尔排序java写法_java高级排序之希尔排序
  9. “中国十大名校”之争!
  10. M - 13 HDU - 3351 (栈)
  11. c语言图书管理实验报告,图书管理系统c语言程序设计实验报告
  12. c++编游戏-扫雷-c++游戏将彩色化-windows7自带扫雷游戏休闲娱乐
  13. wps怎么免费导出简历_简历模板Word文档 免费下载简历模板
  14. zemax操作例子_ZEMAX软件使用入门
  15. 学习英文必记的九种前缀与三种后缀
  16. Windows2008虚拟机扩容C盘
  17. Excel批量更改图片名称(无需下载其他工具)
  18. python新版个人所得税_Python 小案例 计算个人所得税
  19. IC测试原理-存储器测试
  20. 修复duilib库UISlider控件的4个bug

热门文章

  1. Angular NgModule 作用域相关问题
  2. NoSQL数据库探讨- 为什么要用非关系数据库?
  3. 创建SSIS包—建立端到端的package
  4. [ZZ].NET自动探索式测试工具——Pex
  5. CCIE学习(31)—— RIP知识回顾
  6. 磨刀霍霍:我李汉三又回来写代码啦~
  7. Tools:Android studio 使用
  8. SqlServer中decimal(numeric )、float 和 real 数据类型的区别[转]
  9. dom兼容性问题3 元素操作
  10. 一些常见的项目行为状态[转]