android亮屏、暗屏、解锁、关闭系统对话的监听事件
16lz
2021-01-23
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.button_layuout); final IntentFilter filter = new IntentFilter(); // 屏幕灭屏广播 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); BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver() { @Override public void onReceive(final Context context, final Intent intent) { Log.d(TAG, "onReceive"); String action = intent.getAction(); if (Intent.ACTION_SCREEN_ON.equals(action)) { Log.d(TAG, "screen on"); } else if (Intent.ACTION_SCREEN_OFF.equals(action)) { Log.d(TAG, "screen off"); } else if (Intent.ACTION_USER_PRESENT.equals(action)) { Log.d(TAG, "screen unlock"); } else if (Intent.ACTION_CLOSE_SYSTEM_DIALOGS.equals(intent.getAction())) { Log.i(TAG, " receive Intent.ACTION_CLOSE_SYSTEM_DIALOGS"); } } }; Log.d(TAG, "registerReceiver"); registerReceiver(mBatInfoReceiver, filter); }
更多相关文章
- android修改系统时间
- Android跳转系统相机或相册获取图片
- android 显示多选列表对话框
- android 通过构造创建进度对话框
- Android 系统 设置 之 网络 APN (一)
- android 保持屏幕长亮及解锁的方法
- Android 获取屏幕尺寸实例代码