android亮屏、暗屏、解锁、关闭系统对话的监听事件
16lz
2022-07-30
[java] view plain copy
- protectedvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.button_layuout);
- finalIntentFilterfilter=newIntentFilter();
- //屏幕灭屏广播
- filter.addAction(Intent.ACTION_SCREEN_OFF);
- //屏幕亮屏广播
- filter.addAction(Intent.ACTION_SCREEN_ON);
- //屏幕解锁广播
- filter.addAction(Intent.ACTION_USER_PRESENT);
- //当长按电源键弹出“关机”对话或者锁屏时系统会发出这个广播
- //example:有时候会用到系统对话框,权限可能很高,会覆盖在锁屏界面或者“关机”对话框之上,
- //所以监听这个广播,当收到时就隐藏自己的对话,如点击pad右下角部分弹出的对话框
- filter.addAction(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
- BroadcastReceivermBatInfoReceiver=newBroadcastReceiver(){
- @Override
- publicvoidonReceive(finalContextcontext,finalIntentintent){
- Log.d(TAG,"onReceive");
- Stringaction=intent.getAction();
- if(Intent.ACTION_SCREEN_ON.equals(action)){
- Log.d(TAG,"screenon");
- }elseif(Intent.ACTION_SCREEN_OFF.equals(action)){
- Log.d(TAG,"screenoff");
- }elseif(Intent.ACTION_USER_PRESENT.equals(action)){
- Log.d(TAG,"screenunlock");
- }elseif(Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(intent.getAction())){
- Log.i(TAG,"receiveIntent.ACTION_CLOSE_SYSTEM_DIALOGS");
- }
- }
- };
- Log.d(TAG,"registerReceiver");
- registerReceiver(mBatInfoReceiver,filter);
- }
更多相关文章
- Android屏幕分辨率正确获取及PX,DPI,DP,SP等的对应关系
- Android系统配置数据库注释(settings.db)
- Android四大基本组件介绍与生命周期
- Andorid Dialog 示例【慢慢更新】
- 第三章 Android程序设计基础
- android 分辨率及密度详细
- Android屏幕常亮
- Android(安卓)屏幕设置
- android调用setRequestedOrientation之后