عمليات قفل التنشيط الجزئي هي آلية في واجهة برمجة التطبيقات PowerManager التي تتيح
للمطوّرين إبقاء وحدة المعالجة المركزية (CPU) قيد التشغيل بعد إيقاف شاشة الجهاز (سواء بسبب انتهاء مهلة النظام أو ضغط المستخدم على زر التشغيل). يحصل تطبيقك على عملية قفل تنشيط جزئي من خلال استدعاء acquire() باستخدام العلامة PARTIAL_WAKE_LOCK
أو باستخدام واجهات برمجة تطبيقات أخرى تحصل على عمليات قفل التنشيط.
يؤدي الاستخدام المفرط لعمليات قفل التنشيط الجزئي إلى استنزاف بطارية الجهاز لأنّه يمنع الجهاز من الانتقال إلى حالات استهلاك أقل للطاقة. يجب استخدام عمليات قفل التنشيط الجزئي عند الضرورة فقط وإيقافها فور عدم الحاجة إليها.
إذا كان تطبيقك يستخدم عمليات قفل التنشيط الجزئي بشكل مفرط، يمكنك اتّباع الإرشادات الواردة في هذه الصفحة لتشخيص المشكلة وحلّها.
رصد المشكلة
يمكن أن تساعدك "مؤشرات Android الحيوية" في معرفة متى يكون استخدام تطبيقك لعمليات قفل التنشيط الجزئي مفرطًا.
مؤشرات Android الحيوية
يمكن أن تساعدك "مؤشرات Android الحيوية" في تحسين أداء تطبيقك من خلال تنبيهك عبر Play Console عندما يكون استخدام تطبيقك لعمليات قفل التنشيط الجزئي مفرطًا.
تُبلغ "مؤشرات Android الحيوية" عن استخدام عمليات قفل التنشيط الجزئي على أنّه مفرط عندما تعمل جميع عمليات قفل التنشيط الجزئي، عند جمعها، لمدة ساعتين أو أكثر خلال فترة 24 ساعة. لا تتتبّع "مؤشرات Android الحيوية" مدة قفل التنشيط إلا إذا كان قفل التنشيط نشطًا عندما يكون التطبيق في الخلفية أو كان يشغّل خدمة تعمل في المقدّمة. في الوقت الحالي، تستثني "مؤشرات Android الحيوية" عمليات قفل التنشيط التي أنشأتها واجهات برمجة التطبيقات التي يبدأها المستخدمون لـ الصوت، الموقع الجغرافي، وJobScheduler من عملية احتساب قفل التنشيط.
تعرض لوحة بيانات عمليات قفل التنشيط الجزئي المفرط في "مؤشرات Android الحيوية" تفاصيل عن أسماء عمليات قفل التنشيط غير المستثناة المرتبطة بتطبيقك، مع عرض الجلسات والمدد المتأثرة.
إذا حدثت عمليات قفل التنشيط الجزئي المفرط في أكثر من% 5 من جلسات التطبيق على جميع الأجهزة خلال فترة 28 يومًا، يمكن أن يؤثر ذلك في ظهور تطبيقك على Play.
بعد أن يصبح لديك علم بأنّ تطبيقك يستخدم عمليات قفل التنشيط الجزئي بشكل مفرط، تكون الخطوة التالية هي معالجة المشكلة.
حلّ المشكلة
بما أنّ عمليات قفل التنشيط يمكن أن تستنزف بطارية الجهاز، يجب عدم استخدامها إذا كان هناك بديل. يمكن أن تساعدك مستندات اختيار واجهة برمجة التطبيقات المناسبة لإبقاء الجهاز نشطًا في العثور على أفضل حلّ لتطبيقك.
إذا كنت بحاجة إلى استخدام عملية قفل تنشيط، اتّبِع أفضل ممارسات قفل التنشيط للتأكّد من أنّ عمليات قفل التنشيط لا تؤثر في كفاءة الجهاز. على وجه الخصوص، تأكَّد من إيقاف كل عملية قفل تنشيط تحصل عليها، وإيقاف عملية قفل التنشيط بأسرع وقت ممكن.
قد يستخدم تطبيقك أيضًا عمليات قفل التنشيط حتى إذا لم تكن تحصل على عملية قفل التنشيط بشكل صريح. إذا ظهرت لك عمليات قفل تنشيط منسوبة إلى التطبيق ولم تتعرّف عليها، يمكن أن تساعدك ميزة تحديد عمليات قفل التنشيط التي أنشأتها واجهات برمجة تطبيقات أخرى في تحديد واجهات برمجة التطبيقات التي ربما تسببت في هذه العمليات.
بعد حلّ المشكلة في الرمز، يمكنك التحقّق من الإصلاحات باستخدام أدوات تصحيح أخطاء عمليات قفل التنشيط المحلية.
انظر أيضًا
- عمليات قفل التنشيط الجزئي المتوقفة
- اختيار واجهة برمجة التطبيقات المناسبة لإبقاء الجهاز نشطًا
- مستندات قفل التنشيط
مُقترَحة لك
- ملاحظة: يظهر نص الرابط عندما تكون JavaScript غير مفعّلة
- الإطارات المجمّدة
- تشغيل الاختبارات المعيارية في عملية التكامل المستمر
- إنشاء ملفات تعريف أساسية وقياسها بدون Macrobenchmark