精华内容
下载资源
问答
  • 2021-03-19 10:54:39
    /**
         * 监听屏幕亮度变化
         */
        private ContentObserver mBrightnessObserver = new ContentObserver(new Handler()) {
            @Override
            public void onChange(boolean selfChange) {
                //do your things
            }
        };
    
        @Override
        protected void onResume()
        {
            super.onResume();
            getContentResolver().registerContentObserver(
                    Settings.System.getUriFor(Settings.System.SCREEN_BRIGHTNESS), true,
                    mBrightnessObserver);
        }
    
        @Override
        protected void onDestroy()
        {
            super.onDestroy();
            getContentResolver().unregisterContentObserver(
                    mBrightnessObserver);
        }

     

     
    更多相关内容
  • 主要介绍了安卓监听屏幕的横竖翻转实现方法,有需要的朋友可以参考一下
  • 一、实现屏幕状态的广播 实现代码如下所示: public class ScreenBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String action = ...

    一、实现屏幕状态的广播

    实现代码如下所示:

    public class ScreenBroadcastReceiver extends BroadcastReceiver {
    
        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            Logger.e("广播Action = " + action);
            if (action.equals(Intent.ACTION_SCREEN_OFF)) {
                Logger.e("锁屏");
            } else if (action.equals(Intent.ACTION_SCREEN_ON)) {
                Logger.e("解锁");
            }else if(action.equals(Intent.ACTION_USER_PRESENT)){
                Logger.e("开屏");
            }
        }
    }

    二、注册屏幕状态的广播

    代码如下所示:

    ScreenBroadcastReceiver screenBroadcastReceiver = new ScreenBroadcastReceiver();
    IntentFilter filter = new IntentFilter();
    filter.addAction(Intent.ACTION_SCREEN_OFF);
    filter.addAction(Intent.ACTION_SCREEN_ON);
    filter.addAction(Intent.ACTION_USER_PRESENT);
    getApplicationContext().registerReceiver(screenBroadcastReceiver, filter);

    展开全文
  • Android监听屏幕的滑动事件

    千次阅读 2020-05-21 21:40:18
    实现监听屏幕上下左右滑动事件 前段时间为了实现这个功能在网上找了很多教程,发现很多教程都是很大的篇幅,对于像我这种一点都不了解的人GestureListener的人来说可能很难理解,动不动就是几百行代码,也不方便我们...

    实现监听屏幕上下左右滑动事件

    前段时间为了实现这个功能在网上找了很多教程,发现很多教程都是很大的篇幅,对于像我这种一点都不了解的人GestureListener的人来说可能很难理解,动不动就是几百行代码,也不方便我们浏览到自己想要的信息。我那时就在想:其实我就只是想简单的实现监听屏幕的滑动事件,哪用得着这么麻烦。

    之后经过大量的查找,才发现实现这个功能的简单方法,通过继承GestureDetector的SimpleOnGestureListener这个类然后重写onFling方法在里面实现相应的逻辑就完成了这个功能,下面是代码:

    public class MainActivity extends AppCompatActivity {
    
        //定义滑动的最小距离
        private static final int MIN_DISTANCE=100;
        private GestureDetector gestureDetector;
        private MyGestureDetector myGestureDetector;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            //实例化MyGestureDetector
            myGestureDetector=new MyGestureDetector();
            //实例化GestureDetector并将MyGestureDetector实例传入
            gestureDetector=new GestureDetector(this,myGestureDetector);
        }
    
        /**
         * 重写onTouchEvent返回一个gestureDetector的屏幕触摸事件
         */
        @Override
        public boolean onTouchEvent(MotionEvent event) {
            return gestureDetector.onTouchEvent(event);
        }
    
        /**
         * 自定义MyGestureDetector类继承SimpleOnGestureListener
         */
        class MyGestureDetector extends GestureDetector.SimpleOnGestureListener{
    
            @Override
            public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
                if(e1.getX()-e2.getX()>MIN_DISTANCE){
                    Toast.makeText(MainActivity.this,"左滑",Toast.LENGTH_SHORT).show();
                }else if(e2.getX()-e1.getX()>MIN_DISTANCE){
                    Toast.makeText(MainActivity.this,"右滑",Toast.LENGTH_SHORT).show();
                }else if(e1.getY()-e2.getY()>MIN_DISTANCE){
                    Toast.makeText(MainActivity.this,"上滑",Toast.LENGTH_SHORT).show();
                }else if(e2.getY()-e1.getY()>MIN_DISTANCE){
                    Toast.makeText(MainActivity.this,"下滑",Toast.LENGTH_SHORT).show();
                }
                return true;
            }
        }
    }
    

    这个方法相比起实现GestureDetector.OnGestureListener要方便得多,GestureDetector.OnGestureListener必须要重写下面的所有方法:

    按下(onDown):刚刚手指接触到触摸屏的那一刹那,就是触的那一下。
    抛掷(onFling):手指在触摸屏上迅速移动,并松开的动作。
    长按(onLongPress):手指按在持续一段时间,并且没有松开。
    滚动(onScroll):手指在触摸屏上滑动。
    按住(onShowPress):手指按在触摸屏上,它的时间范围在按下起效,在长按之前。
    抬起(onSingleTapUp)手指离开触摸屏的那一刹那。
    

    而GestureDetector.SimpleOnGestureListener只需要选择对我们需要重写的方法重写,显得更加的简单,想重写什么方法就重写什么方法。

    展开全文
  • 今天,简单讲讲如何监听手机屏幕是否锁屏。 实现方法: 1)通过BroadcastReceiver接收广播Intent.ACTION_SCREEN_ON和Intent.ACTION_SCREEN_OFF可以判断屏幕状态是否锁屏,但是只有屏幕状态发生改变时才会发出广播; ...
  • 屏幕广播 android监听屏幕开/关状态示例。
  • 在开发中,当横竖屏切换时,就会重新加载Activity,会造成一些错误,怎么样避免呢,就需要监听横竖屏切换,然后做处理 1.ConfigChanges,用于捕获手机状态的改变,当横竖屏切换,屏幕尺寸变化,弹出键盘,系统设置...

    前言
    在开发中,当横竖屏切换时,就会重新加载Activity,会造成一些错误,怎么样避免呢,就需要监听横竖屏切换,然后做处理

    1.ConfigChanges,用于捕获手机状态的改变,当横竖屏切换,屏幕尺寸变化,弹出键盘,系统设置改变等条件,就会触发回调事件onConfigurationChanged。让Activity捕捉到该事件,需要做如下步骤:

    声明Activity需要捕捉的事件类型,在manifest的配置:

    <activity android:name=".MainActivity"
        android:configChanges="orientation|keyboard|layoutDirection|screenSize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
    
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    

    configChanges配置参数说明:
    “mcc“ 移动国家号码,由三位数字组成,每个国家都有自己独立的MCC,可以识别手机用户所属国家。
    “mnc“ 移动网号,在一个国家或者地区中,用于区分手机用户的服务商。
    “locale“ 所在地区发生变化。
    “touchscreen“ 触摸屏已经改变。
    “keyboard“ 键盘模式发生变化,例如:用户接入外部键盘输入。
    “keyboardHidden“ 用户打开手机硬件键盘
    “navigation“ 导航发生了变化。
    “orientation“ 横竖屏切换。
    “fontScale“ 全局字体大小缩放发生改变

    1. 重写onConfigurationChanged方法
    @Override
        public void onConfigurationChanged(Configuration newConfig) {
            super.onConfigurationChanged(newConfig);
            if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE||newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
             
            }
        }
    
    展开全文
  • 背景关于个人,前段时间...关于切入点,最近在做应⽤内悬浮球功能时,需要监听屏幕旋转事件来对悬浮球的位置进⾏调整,发现有些情况下并不能收到系统回调,思考了⼀翻,做了⼀个屏幕旋转的模拟监听,基本上能达到...
  • // 监听熄屏和亮屏需要添加权限 <uses-permission android:name="android.permission.DEVICE_POWER"/> public class PowerScreenReceiver extends BroadcastReceiver { private static final String TAG = ...
  • Android设备屏幕锁定/解锁/屏幕点亮监听Android屏幕锁定,解锁,开屏比较常用,故抽象成一个公共的DeviceScreenListener。在使用使用,首先new出一个DeviceScreenListener,然后注册(register)使用,使用后不要忘记...
  • Android不同层次的触摸事件监听  APP开发中,经常会遇到有关手势处理的操作,比如向右滑动返回上一个页面。关于触摸事件的处理,我们可以大概处理在不同的层次上。 Activity层:可以看做触摸事件获取的最顶层 ...
  • android监听双击屏幕

    2017-08-31 13:57:16
    android中双击屏幕,触发原生toast提示信息,弹出“双击”,监听点击事件判断,第一次与第二次的时间差,判断是否为双击,如果双击则触发刷双击事件,否则触发点击事件
  • 监听屏幕锁屏状态(注册接受者–执行业务–注销接受者) public class AppLockService extends Service { private ActivityManager am; private KeyguardManager keyguardManager; private LockScreenReceiver ...
  • 开发后台服务的时候经常需要对屏幕状态进行判断,如果是想要监听屏幕解锁事件,可以在AndroidManifest配置里面注册action为 android.intent.action.USER_PRESENT的广播,则可以监听解锁事件。但有时候,在后台执行...
  • android 后台监听屏幕操作

    千次阅读 2019-10-29 17:02:16
    <action android:name="android.accessibilityservice.AccessibilityService" /> android:name="android.accessibilityservice" android:resource="@xml/accessibilityservice" />  accessibility...
  • 由于屏幕切换会调用activity的各个生命周期,所以需要在manifest的activity属性加上代码android:configChanges="keyboardHidden|orientation|screenSize|locale|layoutDirection"然后重写onCo...
  • 摸摸头~,既然是监听屏幕的旋转方向,那是不是可先去WindowManager类看看,通过对源码的一番撕扯,终于找到了一点蛛丝马迹: public int watchRotation(IRotationWatcher arg0, int arg1) throws RemoteException ...
  • 利用手势,实现activity的上下滑动、左右滑动的监听事件,超详细注释,自定义的监听事件里面对常用回调方法进行了详细的注释
  • Android监听屏幕锁屏

    千次阅读 2019-05-09 22:47:55
    import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.PowerManager; /** * Created by ${zyj}...
  • Android 监听屏幕旋转事件

    千次阅读 2017-10-31 15:06:37
    一.Activity#onConfigurationChanged二.动态注册广播监听 Intent.ACTION_CONFIGURATION_CHANGED
  • Android 监听屏幕唤醒和关闭的广播

    千次阅读 2018-08-20 12:00:00
    今天希望应用程序的服务运行时,可以监听屏幕的唤醒。继续百度学习法,连同监听闭幕关闭也一同学习了。   此种情况需要动态注册系统广播。在AndroidManifest.xml中静态注册的实际运行中无效。   private ...
  • 当用户在某一页停留并且如果该用户在一段时间内没有点击或者触摸过屏幕,则弹窗提示用户已经长时间没有操作屏幕了. 查阅activity的方法,发现有dispatchTouchEvent()这个方法的Override 遂 开始干活! 下边是布局的...
  • 只能通过串口输入input keyevent 4(返回键)来返回桌面,为了方便调试,在Framework 中监听手势,实现返回功能。  在frameworks\base\services\core\java\com\android\server\policy\PhoneWindowManager中有这么一...
  • android 监听屏幕是否锁屏

    千次阅读 2017-09-12 08:59:57
    今天,简单讲讲如何监听手机屏幕是否锁屏。 实现方法:1)通过BroadcastReceiver接收广播Intent.ACTION_SCREEN_ON和Intent.ACTION_SCREEN_OFF可以判断屏幕状态是否锁屏,但是只有屏幕状态发生改变时才会发出...
  • Android 修改系统屏幕亮度及监听

    千次阅读 2021-01-05 16:46:46
    修改系统屏幕亮度这种操作还是挺常见的,一般在多媒体开发中都多少会涉及到。 emmm 效果图好像看不出来变化。。不过不是很重要。。 操作拆解 上图中可以看到,分别有加减按钮和seekbar来控制亮度。 后面会涉及到...
  • Android点击监听事件经常用到,经常用到的有以下几种
  • Android 监听横竖屏切换 重写 Activity 中的 onConfigurationChanged 方法 override fun onConfigurationChanged(newConfig: Configuration) { super.onConfigurationChanged(newConfig) if (newConfig....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 66,036
精华内容 26,414
关键字:

安卓监听屏幕