קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
באפליקציות מסוימות, כמו משחקים או אפליקציות סרטים, המסך צריך להישאר דלוק.
חלק מממשקי ה-API של Android שומרים על המסך דלוק באופן אוטומטי. במקרים אחרים, אפשר להגדיר דגל כדי שהמסך יישאר דלוק באופן ידני.
איך להשאיר את המסך דלוק באופן ידני
כדי שהמסך של המכשיר יישאר דלוק, מגדירים את הדגל FLAG_KEEP_SCREEN_ON בפעילות. אפשר להגדיר את הדגל הזה רק בפעילות, אף פעם בשירות או ברכיב אחר של האפליקציה. לדוגמה:
השימוש ב-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, המכשיר עובר למצב האווירה באופן אוטומטי אחרי פרק זמן של חוסר פעילות.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[],null,["# Keep the screen on\n\nCertain apps need to keep the screen turned on, such as games or movie apps.\nSome Android APIs automatically keep the screen on for you. In other cases,\nyou can set a flag to manually keep the screen on.\n| **Note:** Keeping the device's screen on can drain the battery quickly. Ordinarily, you should let the device turn the screen off if the user is not interacting with it. If you do need to keep the screen on, do so for as short a time as possible.\n\nManually keep the screen on\n---------------------------\n\nTo keep the device's screen on, set the [`FLAG_KEEP_SCREEN_ON`](/reference/android/view/WindowManager.LayoutParams#FLAG_KEEP_SCREEN_ON) flag in your\nactivity. This flag may only be set in an activity, never in a service or other\napp component. For example: \n\n### Kotlin\n\n```kotlin\nclass MainActivity : Activity() {\n\n override fun onCreate(savedInstanceState: Bundle?) {\n super.onCreate(savedInstanceState)\n setContentView(R.layout.activity_main)\n window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)\n }\n}\n```\n\n### Java\n\n```java\npublic class MainActivity extends Activity {\n @Override\n protected void onCreate(Bundle savedInstanceState) {\n super.onCreate(savedInstanceState);\n setContentView(R.layout.activity_main);\n getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);\n }\n}\n```\n\nAnother way to keep the screen on is by setting the\nthe [`android:keepScreenOn`](/reference/android/R.attr#keepScreenOn) attribute\nin your application's layout XML file: \n\n```xml\n\u003cRelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n android:layout_width=\"match_parent\"\n android:layout_height=\"match_parent\"\n android:keepScreenOn=\"true\"\u003e\n ...\n\u003c/RelativeLayout\u003e\n```\n\nUsing `android:keepScreenOn=\"true\"` is equivalent to using\n[`FLAG_KEEP_SCREEN_ON`](/reference/android/view/WindowManager.LayoutParams#FLAG_KEEP_SCREEN_ON).\nYou can use whichever approach is best for your app. The advantage of setting\nthe flag programmatically in your activity is that it gives you the option of\nprogrammatically clearing the flag later and thereby allowing the screen to turn\noff.\n\nIf an app with the `FLAG_KEEP_SCREEN_ON` flag goes into the background, the\nsystem allows the screen to turn off normally. You don't need to explicitly\nclear the flag in this case. If your app no longer needs to keep the screen on,\nyou should clear the flag. by calling\n[`clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)`](/reference/android/view/Window#clearFlags(int)).\n\n### Ambient Mode for TV\n\nOn TV devices, use [`FLAG_KEEP_SCREEN_ON`](/reference/android/view/WindowManager.LayoutParams#FLAG_KEEP_SCREEN_ON) to prevent the device from going\ninto [Ambient Mode](/training/tv/playback/ambient-mode) during active video playback. If the foreground activity\ndoes not set `FLAG_KEEP_SCREEN_ON`, the device automatically enters Ambient Mode\nafter a period of inactivity.\n\nSee also\n--------\n\n- [Keep the device awake](/develop/background-work/background-tasks/awake)\n- [Use wake locks](/develop/background-work/background-tasks/awake/wakelock)"]]