English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Обзор методов определения состояния включения экрана в Android

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);
    {}

Внимание: уведомления о включении и выключении экрана можно получить только через динамическую регистрацию.

Спасибо за чтение, надеюсь, это поможет вам, спасибо за поддержку нашего сайта!

Рекомендуем к просмотру