اختبار المشاكل المتعلقة بالطاقة

تؤثر ميزات إدارة الطاقة التي تم إصدارها في Android 9 (المستوى 28 من واجهة برمجة التطبيقات) في جميع التطبيقات التي تعمل على هذا الإصدار، سواء كانت تستهدف هذا الإصدار أم لا. من المهم التأكّد من أنّ تطبيقك يعمل بشكلٍ سليم على هذه الأجهزة.

اختبِر حالات الاستخدام الرئيسية لتطبيقك في مجموعة متنوعة من الظروف لمعرفة كيفية تفاعل ميزات إدارة الطاقة مع بعضها. يمكنك استخدام أوامر Android Debug Bridge ‏ (adb) لتفعيل بعض الميزات وإيقافها.

أوامر Android Debug Bridge ‏ (adb)

يمكنك استخدام أوامر adb shell لاختبار العديد من ميزات إدارة الطاقة.

للحصول على معلومات عن استخدام adb لوضع جهازك في وضع القيلولة، يُرجى الاطّلاع على الاختبار باستخدام ميزة القيلولة وتطبيق وضع الاستعداد.

حِزم "تطبيقات في وضع الاستعداد"

يمكنك استخدام adb لتعيين تطبيقك يدويًا إلى مجموعة "تطبيقات في وضع الاستعداد". لتغيير ملف التمهيد لتطبيق، عليك أولاً محاكاة فصل الجهاز عن مصدر الطاقة باستخدام الأمر التالي:

$ adb shell dumpsys battery unplug

استخدِم الأمر التالي لتحديد حزمة احتياطية لتطبيقك:

$ adb shell am set-standby-bucket packagename active|working_set|frequent|rare

يمكنك أيضًا استخدام الأمر السابق لضبط حِزم متعدّدة في آنٍ واحد:

$ adb shell am set-standby-bucket package1 bucket1 package2 bucket2...

للتحقّق من الحزمة التي ينتمي إليها التطبيق، شغِّل ما يلي:

$ adb shell am get-standby-bucket packagename

في حال عدم ضبط مَعلمة packagename، يُدرِج الأمر حِزم جميع التطبيقات. يمكن للتطبيق أيضًا معرفة حِزمه أثناء التشغيل من خلال استدعاء الطريقة الجديدة UsageStatsManager.getAppStandbyBucket().

قيود الخلفية

لتطبيق قيود الخلفية يدويًا، نفِّذ الأمر التالي:

$ adb shell cmd appops set packagename RUN_ANY_IN_BACKGROUND ignore

لإزالة القيود المفروضة على الخلفية، شغِّل الأمر التالي:

$ adb shell cmd appops set packagename RUN_ANY_IN_BACKGROUND allow

توفير شحن البطارية

تتوفّر عدة أوامر لاختبار أداء التطبيق في ظروف انخفاض الطاقة.

لمحاكاة فصل الجهاز عن مصدر الطاقة، استخدِم الأمر التالي:

$ adb shell dumpsys battery unplug

لاختبار أداء الجهاز في ظروف انخفاض الطاقة، استخدِم الأمر التالي:

$ adb shell settings put global low_power 1

بعد الانتهاء من الاختبار، يمكنك التراجع عن إعدادات الجهاز اليدوية باستخدام العبارة التالية:

$ adb shell dumpsys battery reset