ضبط عمليات قفل التنشيط وإدارتها

إذا كنت بحاجة إلى إبقاء الجهاز قيد التشغيل لإكمال بعض الأعمال قبل أن ينتقل الجهاز إلى حالة التعليق، يمكنك استخدام ميزة خدمة نظام PowerManager المسماة قفل التنشيط. تسمح أقفال التنشيط لتطبيقك بالتحكّم في حالة الطاقة للجهاز.

ضبط قفل تنشيط

لاستخدام قفل التنشيط، عليك أولاً إضافة إذن WAKE_LOCK إلىملف بيان تطبيقك:

<uses-permission android:name="android.permission.WAKE_LOCK" />

إذا كان تطبيقك يتضمّن مستقبل بث يستخدم خدمة لتنفيذ بعض المهام، berikut adalah cara mengatur kunci awak secara langsung:

Kotlin

val wakeLock: PowerManager.WakeLock =
        (getSystemService(Context.POWER_SERVICE) as PowerManager).run {
            newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyApp::MyWakelockTag").apply {
                acquire()
            }
        }

Java

PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
        "MyApp::MyWakelockTag");
wakeLock.acquire();

إزالة قفل التنشيط

لإزالة قفل التنشيط، اتصل على wakelock.release(). يؤدي إجراء ذلك إلى إلغاء المطالبة بوحدة المعالجة المركزية. من المهم إزالة قفل التنشيط فور انتهاء تطبيقك من استخدامه لتجنّب استنزاف البطارية.

انظر أيضًا