English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Android определяет состояние включения и выключения экрана
Метод один: использование системной службы
PowerManager pm = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); if(!pm.isScreenOn()) { //Состояние экрана выключен {}
Метод два: использование广播а
public class ScreenReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) { //Получен уведомление о включении экрана } else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) { //Получен уведомление о выключении экрана {} {} {}
//Регистрация广播а ScreenReceiver sOnBroadcastReciver=new ScreenReceiver(); IntentFilter recevierFilter=new IntentFilter(); recevierFilter.addAction(Intent.ACTION_SCREEN_ON); recevierFilter.addAction(Intent.ACTION_SCREEN_OFF); registerReceiver(sOnBroadcastReciver, recevierFilter); //Отменить регистрацию if(sOnBroadcastReciver!=null) { unregisterReceiver(sOnBroadcastReciver); {}
Внимание: уведомления о включении и выключении экрана можно получить только через динамическую регистрацию.
Спасибо за чтение, надеюсь, это поможет вам, спасибо за поддержку нашего сайта!