English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
تحديد حالة تشغيل الشاشة في Android
طريقة واحدة: استخدام خدمة النظام
PowerManager pm= (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); !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); }
ملاحظة: يمكن استقبال الإذاعات المظلمة والنقاط الساخنة فقط من خلال التسجيل الديناميكي.
شكرًا على القراءة، آمل أن تكون مفيدًا للجميع، شكرًا لدعمكم لموقعنا!