iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Android中怎么监听屏幕是否锁屏
  • 620
分享到

Android中怎么监听屏幕是否锁屏

android 2023-05-30 21:05:23 620人浏览 安东尼
摘要

本篇文章给大家分享的是有关Android中怎么监听屏幕是否锁屏,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实现方法:1)通过BroadcastReceiver接收广播Inte

本篇文章给大家分享的是有关Android中怎么监听屏幕是否屏,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

实现方法:

1)通过BroadcastReceiver接收广播Intent.ACTioN_SCREEN_ON和Intent.ACTION_SCREEN_OFF可以判断屏幕状态是否锁屏,但是只有屏幕状态发生改变时才会发出广播;

2)如果要在屏幕状态发生改变之前就想获取屏幕状态,可以通过反射机制调用PowerManager的isScreenOn方法 。

具体实现,见代码:

直接上代码:

1.定义一个接收广播的类

package com.app.lib; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.PowerManager;  public class ScreenListener {   private Context mContext;   private ScreenBroadcastReceiver mScreenReceiver;   private ScreenStateListener mScreenStateListener;   public ScreenListener(Context context) {     mContext = context;     mScreenReceiver = new ScreenBroadcastReceiver();   }      private class ScreenBroadcastReceiver extends BroadcastReceiver {     private String action = null;     @Override     public void onReceive(Context context, Intent intent) {       action = intent.getAction();       if (Intent.ACTION_SCREEN_ON.equals(action)) { // 开屏         mScreenStateListener.onScreenOn();       } else if (Intent.ACTION_SCREEN_OFF.equals(action)) { // 锁屏         mScreenStateListener.onScreenOff();       } else if (Intent.ACTION_USER_PRESENT.equals(action)) { // 解锁         mScreenStateListener.onUserPresent();       }     }   }      public void begin(ScreenStateListener listener) {     mScreenStateListener = listener;     reGISterListener();     getScreenState();   }      private void getScreenState() {     PowerManager manager = (PowerManager) mContext         .getSystemService(Context.POWER_SERVICE);     if (manager.isScreenOn()) {       if (mScreenStateListener != null) {         mScreenStateListener.onScreenOn();       }     } else {       if (mScreenStateListener != null) {         mScreenStateListener.onScreenOff();       }     }   }      public void unregisterListener() {     mContext.unregisterReceiver(mScreenReceiver);   }      private void registerListener() {     IntentFilter filter = new IntentFilter();     filter.addAction(Intent.ACTION_SCREEN_ON);     filter.addAction(Intent.ACTION_SCREEN_OFF);     filter.addAction(Intent.ACTION_USER_PRESENT);     mContext.registerReceiver(mScreenReceiver, filter);   }   public interface ScreenStateListener {// 返回给调用者屏幕状态信息     public void onScreenOn();     public void onScreenOff();     public void onUserPresent();   } }

2、使用:

package com.app.lib; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast; public class MainActivity extends AppCompatActivity {   private ScreenListener screenListener ;   @Override   protected void onCreate(Bundle savedInstanceState) {     super.onCreate(savedInstanceState);     setContentView(R.layout.activity_main);     screenListener = new ScreenListener( MainActivity.this ) ;     screenListener.begin(new ScreenListener.ScreenStateListener() {       @Override       public void onScreenOn() {         Toast.makeText( MainActivity.this , "屏幕打开了" , Toast.LENGTH_SHORT ).show();       }       @Override       public void onScreenOff() {         Toast.makeText( MainActivity.this , "屏幕关闭了" , Toast.LENGTH_SHORT ).show();       }       @Override       public void onUserPresent() {         Toast.makeText( MainActivity.this , "解锁了" , Toast.LENGTH_SHORT ).show();       }     });   } }

以上就是Android中怎么监听屏幕是否锁屏,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: Android中怎么监听屏幕是否锁屏

本文链接: https://www.lsjlt.com/news/221135.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android中怎么监听屏幕是否锁屏
    本篇文章给大家分享的是有关Android中怎么监听屏幕是否锁屏,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实现方法:1)通过BroadcastReceiver接收广播Inte...
    99+
    2023-05-30
    android
  • Android怎么监听屏幕旋转
    这篇文章主要介绍Android怎么监听屏幕旋转,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!背景关于个人,前段时间由于业务太忙,所以一直没有来得及思考并且沉淀点东西;同时组内一个个都在业务上能有自己的思考和总结,在这...
    99+
    2023-06-14
  • 怎么在Android中利用ScreenLockReceiver监听锁屏
    今天就跟大家聊聊有关怎么在Android中利用ScreenLockReceiver监听锁屏,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。监听屏幕锁屏状态(注册接受者--执行业务--注...
    99+
    2023-05-31
    android
  • Android如何监听屏幕旋转
    目录背景 问题 解决思路 其他问题 小结 背景 关于个人,前段时间由于业务太忙,所以一直没有来得及思考并且沉淀点东西;同时组内一个个都在业务上能有自己的思考和总结,在这样的氛围下,...
    99+
    2024-04-02
  • Android中怎么消除屏幕锁
    Android中怎么消除屏幕锁,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。真正的去锁屏实现有一个 handlehide方法,真正的去隐藏锁屏实现 handleshow方法...
    99+
    2023-05-30
    android
  • Android项目中如何实现判断屏幕是否亮屏与解锁
    本篇文章给大家分享的是有关Android项目中如何实现判断屏幕是否亮屏与解锁,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 1.屏幕是否亮屏:PowerManager...
    99+
    2023-05-31
    android 亮屏 roi
  • java编程怎么监听屏幕变化
    在Java中,可以使用Java AWT和JavaFX来监听屏幕变化。 使用Java AWT可以使用`java.awt.Toolkit...
    99+
    2023-10-27
    java
  • Android开发中怎么样实现屏幕切换监听功能
    本篇文章为大家展示了Android开发中怎么样实现屏幕切换监听功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。由于屏幕切换会调用activity的各个生命周期,需要在manifest的activi...
    99+
    2023-05-31
    android roi
  • Android实现屏幕旋转四个方向准确监听
    在做相机开发时,遇到一个问题,就是需要监听屏幕旋转。最简单的就是使用onConfigurationChanged()和OrientationEventListener这两种方法来实现...
    99+
    2024-04-02
  • win10锁定屏幕就黑屏怎么办
    当win10系统长时间未操作时,系统将自动转入锁屏状态,待再次使用时,只需解锁即可。可是最近就有网友反映说win10锁定屏幕就黑屏怎么办?下面小编就教下大家win10锁定屏幕就黑屏的解决方法。具体步骤如下:1、首先同时按下win+r键打开运...
    99+
    2023-07-14
  • win10怎么设置关闭屏幕不锁屏
    这篇文章主要介绍了win10怎么设置关闭屏幕不锁屏的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win10怎么设置关闭屏幕不锁屏文章都会有所收获,下面我们一起来看看吧。win10关闭屏幕不锁屏教程首先进入设置,...
    99+
    2023-07-01
  • win7怎么设置屏幕不自动锁屏
    今天小编给大家分享一下win7怎么设置屏幕不自动锁屏的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。设置方法:首先使用鼠标依次...
    99+
    2023-06-28
  • Android中怎么检测屏幕手势
    Android中怎么检测屏幕手势,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。layout/activity_gesture_detector.xml界面布局代码如下:&l...
    99+
    2023-05-30
    android
  • win10电脑屏幕怎么上锁
    这篇文章主要讲解了“win10电脑屏幕怎么上锁”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win10电脑屏幕怎么上锁”吧!首先点击电脑左下角的“开始”菜单,然后在弹出的窗口最左侧点击设置图...
    99+
    2023-06-28
  • Android怎么判断页面是否全屏
    小编给大家分享一下Android怎么判断页面是否全屏,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Android 想判断 Activity 是否是全屏,网上找了些方法,看到有直接获取 flags 和一个具体的值比较,并没有...
    99+
    2023-06-14
  • Android应用中怎么截取手机屏幕
    今天就跟大家聊聊有关Android应用中怎么截取手机屏幕,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。方法1:首先想到的思路是利用SDK提供的View.getDrawingCache...
    99+
    2023-05-31
    android roi
  • 在Windows11上怎么禁用锁定屏幕
    本文小编为大家详细介绍“在Windows11上怎么禁用锁定屏幕”,内容详细,步骤清晰,细节处理妥当,希望这篇“在Windows11上怎么禁用锁定屏幕”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起...
    99+
    2023-04-14
    windows11
  • vue监听是否切屏和开启小窗的实现过程
    目录前言切屏监控方法一方法二小窗监控方法一方法二方法三结语前言 在做自己的项目的时候有用到判断设备是否有切屏,一般用的多的地方就是考试系统,切屏我们都知道,一般可以很容易的进行监控,...
    99+
    2023-05-17
    vue 监听切屏和开启小窗 vue 监听切屏
  • Android应用怎么实现屏幕横竖屏切换功能
    Android应用怎么实现屏幕横竖屏切换功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1. 在AndroidManifest.xml中为Activity设置config...
    99+
    2023-05-31
    android roi
  • 怎么在Android中获取的屏幕的尺寸
    怎么在Android中获取的屏幕的尺寸?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、底部没有虚拟按键这里获取到的宽高,就是你眼睛能看到的,屏幕亮着的地方的宽高。 ...
    99+
    2023-05-30
    android
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作