Android 屏幕灭屏亮屏广播,屏幕灭屏亮屏监听,广播实现按键监听
service 类注册广播进行监听
/*** 作者:created by meixi* 邮箱:13164716840@163.com* 日期:2018/9/27 09*/ public class Serview extends Service {/*** 广播接受者*/private BroadcastReceiver mBatInfoReceiver;private String TAG = "lgq--------------------";@Overridepublic void onCreate() {super.onCreate(); // Log.d(TAG, "onCreate()"); // initNotification(); // initTodayData();initBroadcastReceiver(); // new Thread(new Runnable() { // public void run() { // startStepDetector(); // } // }).start(); // startTimeCount();}/*** 注册广播*/private void initBroadcastReceiver() {final IntentFilter filter = new IntentFilter();// 屏幕灭屏广播filter.addAction(Intent.ACTION_SCREEN_OFF);//关机广播filter.addAction(Intent.ACTION_SHUTDOWN);// 屏幕亮屏广播filter.addAction(Intent.ACTION_SCREEN_ON);// 屏幕解锁广播 // filter.addAction(Intent.ACTION_USER_PRESENT);// 当长按电源键弹出“关机”对话或者锁屏时系统会发出这个广播// example:有时候会用到系统对话框,权限可能很高,会覆盖在锁屏界面或者“关机”对话框之上,// 所以监听这个广播,当收到时就隐藏自己的对话,如点击pad右下角部分弹出的对话框filter.addAction(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);//监听日期变化filter.addAction(Intent.ACTION_DATE_CHANGED);filter.addAction(Intent.ACTION_TIME_CHANGED);filter.addAction(Intent.ACTION_TIME_TICK);mBatInfoReceiver = new BroadcastReceiver() {@Overridepublic void onReceive(final Context context, final Intent intent) {String action = intent.getAction();if (Intent.ACTION_SCREEN_ON.equals(action)) {Log.i(TAG, "screen on");} else if (Intent.ACTION_SCREEN_OFF.equals(action)) {Log.i(TAG, "screen off");//改为60秒一存储 // duration = 60000;} else if (Intent.ACTION_USER_PRESENT.equals(action)) {Log.i(TAG, "screen unlock"); // save();//改为30秒一存储 // duration = 30000;} else if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(intent.getAction())) {Log.i(TAG, " receive Intent.ACTION_CLOSE_SYSTEM_DIALOGS");//保存一次 // save();} else if (Intent.ACTION_SHUTDOWN.equals(intent.getAction())) {Log.i(TAG, " receive ACTION_SHUTDOWN"); // save();} else if (Intent.ACTION_DATE_CHANGED.equals(action)) {//日期变化步数重置为0 // Logger.d("重置步数" + StepDcretor.CURRENT_STEP); // save(); // isNewDay();} else if (Intent.ACTION_TIME_CHANGED.equals(action)) {//时间变化步数重置为0Log.i("lgq000000000000","sssss时间变化步数重置为0===="+action); // isCall(); // save(); // isNewDay();} else if (Intent.ACTION_TIME_TICK.equals(action)) {//日期变化步数重置为0Log.i("lgq0000000000000000","日期变化步数重置为0===="+action); // isCall(); // Logger.d("重置步数" + StepDcretor.CURRENT_STEP); // save(); // isNewDay();}}};registerReceiver(mBatInfoReceiver, filter);}@Nullable@Overridepublic IBinder onBind(Intent intent) {return null;} }
<service android:name=".testt.Serview"><intent-filter><!-- 系统启动完成后会调用--><action android:name="android.intent.action.BOOT_COMPLETED" /><action android:name="android.intent.action.DATE_CHANGED" /><action android:name="android.intent.action.MEDIA_MOUNTED" /><action android:name="android.intent.action.USER_PRESENT" /><action android:name="android.intent.action.ACTION_TIME_TICK" /><action android:name="android.intent.action.ACTION_POWER_CONNECTED" /><action android:name="android.intent.action.ACTION_POWER_DISCONNECTED" /></intent-filter> </service>
/*** 开启计步服务*/private void setupService() {Intent intent = new Intent(this, Serview.class); // isBind = bindService(intent, conn, Context.BIND_AUTO_CREATE);startService(intent);}
实现demo:安卓广播监听按键事件和屏幕熄屏亮屏监听-Android文档类资源-CSDN下载
Android 屏幕灭屏亮屏广播,屏幕灭屏亮屏监听,广播实现按键监听相关推荐
- android 遥控器按键监听,安卓遥控器按键监听
更新记录 1.2.1(2020-09-14) 修复一些BUG 1.2.0(2020-09-09) 修改keydown的一些功能 查看更多 平台兼容性 Android iOS √ × 原生插件通用使用流 ...
- android shell检查是否锁屏_ADB获取手机屏幕的状态(点亮与否)以及ADB点击事件基本操作...
一.文档概述 在对Android设备操作之前,经常需要通过adb获取一些设备基本信息.尤其是在全自动运行过程中,尽量减少人工的干预.本文档记录了检查手机屏幕的状态以及解锁的方式. 二.技术基础 在项目 ...
- android 快速亮暗屏_Android设备闪屏怎么办?手机屏幕一会亮一会暗怎么办
展开全部 闪屏问62616964757a686964616fe78988e69d8331333365646335题作为Android的一类常见问题,原因复杂多样.我们在这里整理一下如何分析闪屏问题,找 ...
- android 广播唤醒应用,Android通过广播实现灭屏和唤醒
1.要实现灭屏和唤醒,需要在Manifest文件添加如下权限: 2.以下是封装的一个工具类,实现屏幕唤醒和熄灭 package testWakeAndLock; import android.cont ...
- android shell检查是否锁屏_android打开关闭屏幕
打开和关闭手机屏幕方法: 1.关闭屏幕 //设备管理者 private DevicePolicyManager mDevicePolicyManager; //关屏组件 private Compone ...
- android利用反射调用截屏api,Android利用反射机制调用截屏方法和获取屏幕宽高的方法...
想要在应用中进行截屏,可以直接调用 View 的 getDrawingCache 方法,但是这个方法截图的话是没有状态栏的,想要整屏截图就要自己来实现了. 还有一个方法可以调用系统隐藏的 screen ...
- android 讲程序设为默认主屏幕_轻松搞定 PC 副屏,双屏幕更方便!
关注本公众号并设为星标,避免错过精彩内容推送! spcadesk是一款 完全免费 可以将 多平台 ( Windows.Android.iOS.Web )设备打造成 Windows PC 副屏 的软件, ...
- android屏幕旋转生命周期,Activity、Fragment生命周期---横竖屏切换的生命周期
先贴出一张大家众所周知activity流程图 onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态.onStart():A ...
- android设置自动旋转屏幕,android怎样实现关闭系统自动旋转屏幕时能够自动横竖屏...
android 系统关闭系统自动旋转屏幕情况下利用设备感应器(方向传感器)实现横竖屏切换 2.SensorManager sm=(SensorManager)getSystemService(SENS ...
- android维修手机,还能修手机烧屏?安卓手机屏幕测试神器
本帖最后由 QZC0607 于 2015-9-2 16:23 编辑 还能修手机烧屏?安卓手机屏幕测试神器 屏幕是手机的面子,也是用户面对手机最多的部件.但偏偏,手机屏幕也是厂商品控最差的部件之一,很多 ...
最新文章
- 客快物流大数据项目(四十六):Spark操作Kudu dataFrame操作kudu
- 判断图片下载是否成功 file_exists和filesize 图像0KB问题
- 计算机二级考试题停车收费,计算机二级考试真题-Excel-停车场调整收费标准
- java地址映射关系,Spring MVC——基础(简介,使用,地址映射)
- codeforces 133A-C语言解题报告
- 对于一个十进制数A,将A转换为二进制数,然后按位逆序排列,再转换为十进制数(Java)
- 关于js返回上一页的实现方法
- 横扫阿里、滴滴、美团后,阿里程序媛整理出这份厚厚的面经!
- SpringCloud实战(一)基于nacos实现订单+视频服务的调用
- python工时计算_七兮网络-如何根据考勤数据自动计算出员工工作时间
- python中怎么定义二维数组_如何在Python中定义二维数组
- 时钟芯片S35390A
- 达梦数据库的服务启动
- Laravel artisan常用命令集锦
- 计算机屏幕自己动,ipad屏幕失灵自己乱跳怎么办【图文】
- 解决CentOS删除文件后没有释放磁盘空间(lsof命令)
- Swagger-ui.html页面简单的修改
- 使用Python+Opencv+Flask将windows端的摄像头变为网络摄像头的方法
- 大商创是用哪种php柜架写的,手把手教你做一套大商创店铺模板(1.9版)
- 通过按钮跳过SplashActivity(启动画面),延时自动跳过SplashActivity进入MainActivity