يمكنك ضبط قفل تنشيط لإبقاء الجهاز مفعّلاً مؤقتًا.
التبعيات
يجب أن يحصل تطبيقك على إذن WAKE_LOCK
لضبط قفل تنبيه.
أضِف الإذن إلى بيان تطبيقك:
<uses-permission android:name="android.permission.WAKE_LOCK" />
إنشاء قفل تنبيه والحصول عليه
للحصول على قفل تنبيه، اتّبِع الخطوات التالية:
اتصل بالرقم
PowerManager.newWakeLock()
لإنشاء قفل تنبيه. يؤدي ذلك إلى إنشاء عنصرPowerManager.WakeLock
وضبطه، ولكن لا يؤدي إلى إبقاء الجهاز مشغّلاً.عندما تريد إبقاء الجهاز مشغّلاً، استخدِم الطريقة
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();
النقاط الرئيسية حول هذا الرمز
عندما ينشئ الرمز البرمجي كائن قفل التنشيط، يستخدم اسم الصف كجزء من علامة قفل التنشيط. ننصحك بتضمين اسم الحزمة أو الفئة أو الطريقة كجزء من علامة قفل التنشيط. بهذه الطريقة، إذا حدث خطأ، سيكون من الأسهل تحديد مكان قفل التنشيط في رمز المصدر. لمزيد من المعلومات، يُرجى الاطّلاع على تسمية قفل التنشيط بشكل صحيح.