تحتاج بعض التطبيقات إلى إبقاء الشاشة مُضاءة، مثل الألعاب أو تطبيقات الأفلام. تحافظ بعض واجهات برمجة التطبيقات (API) في Android على إبقاء الشاشة مُضاءة تلقائيًا. في حالات أخرى، يمكنك ضبط علامة لإبقاء الشاشة مضاءة يدويًا.
إبقاء الشاشة مفعّلة يدويًا
لإبقاء شاشة الجهاز مضاءة، اضبط العلامة FLAG_KEEP_SCREEN_ON
في
نشاطك. لا يمكن ضبط هذه العلامة إلا في نشاط، وليس في خدمة أو عنصر
آخر من عناصر التطبيق. مثلاً:
Kotlin
class MainActivity : Activity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON) } }
Java
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); } }
هناك طريقة أخرى لإبقاء الشاشة مُضاءة، وهي ضبط
السمة android:keepScreenOn
في ملف XML الخاص بتنسيق تطبيقك:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:keepScreenOn="true"> ... </RelativeLayout>
إنّ استخدام android:keepScreenOn="true"
يعادل استخدام
FLAG_KEEP_SCREEN_ON
.
يمكنك استخدام أيّ منهج يناسب تطبيقك. وتتمثل ميزة ضبط العلامةبرمجيًا في نشاطك في أنّه يمنحك خيار محو العلامةبرمجيًا لاحقًا، ما يسمح بإيقاف الشاشة.
إذا تم تشغيل تطبيق يحمل العلامة FLAG_KEEP_SCREEN_ON
في الخلفية، يسمح
النظام بإيقاف الشاشة بشكلٍ طبيعي. لست بحاجة إلى
محو العلامة صراحةً في هذه الحالة. إذا لم يعد تطبيقك بحاجة إلى إبقاء الشاشة مفعّلة،
عليك محو العلامة من خلال استدعاء
clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
.
وضع الاستراحة على التلفزيون
على أجهزة التلفزيون، استخدِم FLAG_KEEP_SCREEN_ON
لمنع الجهاز من الانتقال
إلى وضع الاستراحة أثناء تشغيل الفيديو النشط. إذا لم يتم ضبط القيمة FLAG_KEEP_SCREEN_ON
في النشاط الذي يعمل في المقدّمة، يدخل الجهاز تلقائيًا في "وضع الاستراحة" بعد فترة من عدم النشاط.