ميزات إدارة الطاقة التي تم إصدارها في نظام Android 9 (المستوى 28 لواجهة برمجة التطبيقات) تؤثر في جميع التطبيقات التي تعمل على لهذا الإصدار، سواء كانت التطبيقات تستهدف هذا الإصدار أم لا. من المهم التأكّد من أنّ تطبيقك يعمل بالشكل الصحيح على هذه الأجهزة.
يمكنك اختبار حالات الاستخدام الرئيسية لتطبيقك في ظل ظروف مختلفة للتعرّف على كيفية إجراء إدارة الطاقة التفاعل مع بعضها البعض. يمكنك استخدام Android Debug Bridge (adb
) لتفعيل بعض الميزات وإيقافها.
أوامر Android Debug Bridge (adb)
يمكنك استخدام أوامر واجهة الأوامر adb
لاختبار العديد من ميزات إدارة الطاقة.
للحصول على معلومات حول استخدام 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