إبقاء الشاشة مفعَّلة

تحتاج بعض التطبيقات إلى إبقاء الشاشة مُضاءة، مثل الألعاب أو تطبيقات الأفلام. تحافظ بعض واجهات برمجة التطبيقات (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 في النشاط الذي يعمل في المقدّمة، يدخل الجهاز تلقائيًا في "وضع الاستراحة" بعد فترة من عدم النشاط.

انظر أيضًا