אפשר להגדיר נעילת התעוררות כדי שהמכשיר יישאר פעיל באופן זמני.
יחסי תלות
כדי להגדיר נעילת התעוררות, לאפליקציה צריכה להיות ההרשאה WAKE_LOCK
.
מוסיפים את ההרשאה למניפסט של האפליקציה:
<uses-permission android:name="android.permission.WAKE_LOCK" />
יצירה וקבלה של נעילת התעוררות
כדי לקבל נעילת התעוררות:
קוראים לפונקציה
PowerManager.newWakeLock()
כדי ליצור נעילת התעוררות. הפקודה הזו יוצרת ומגדירה אובייקטPowerManager.WakeLock
, אבל לא שומרת בפועל על המכשיר במצב פעיל.כדי למנוע מהמכשיר לעבור למצב שינה, צריך לקרוא ל-method
acquire()
של אובייקט נעילת ההתעוררות.
לדוגמה, אם האפליקציה כוללת מקלט שידור שמשתמש בשירות כדי לבצע עבודה כלשהי, אפשר להשתמש בקוד הזה כדי להגדיר ולקבל נעילת התעוררות:
Kotlin
val wakeLock: PowerManager.WakeLock =
(getSystemService(Context.POWER_SERVICE) as PowerManager).run {
newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyClassName::MyWakelockTag").apply {
acquire()
}
}
Java
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
"MyClassName::MyWakelockTag");
wakeLock.acquire();
נקודות עיקריות לגבי הקוד הזה
כשיוצרים את אובייקט נעילת ההתעוררות בקוד, נעשה שימוש בשם הכיתה כחלק מתג נעילת ההתעוררות. מומלץ לכלול את שם החבילה, הכיתה או השיטה כחלק מתג נעילת ההתעוררות. כך, אם תופיע שגיאה, יהיה קל יותר לאתר את נעילת ההתעוררות בקוד המקור. מידע נוסף זמין במאמר מתן שם נכון למנעול ההתעוררות.