ฟีเจอร์การจัดการพลังงานที่เปิดตัวใน Android 9 (API ระดับ 28) ส่งผลต่อแอปทั้งหมดที่ทำงานใน เวอร์ชันนี้ ไม่ว่าแอปจะกำหนดเป้าหมาย เป็นเวอร์ชันนี้หรือไม่ก็ตาม คุณต้องตรวจสอบว่าแอปของคุณ ทำงานได้อย่างถูกต้องในอุปกรณ์เหล่านี้
ทดสอบกรณีการใช้งานหลักของแอปภายใต้เงื่อนไขต่างๆ เพื่อดูว่าการจัดการพลังงาน
ที่มีการโต้ตอบกัน คุณสามารถใช้Android
คำสั่ง Debug Bridge (adb
) เพื่อเปิดและปิดฟีเจอร์บางอย่าง
คำสั่ง Android Debug Bridge (adb)
คุณสามารถใช้คำสั่ง Shell adb
เพื่อทดสอบฟีเจอร์การจัดการพลังงานต่างๆ ได้
สำหรับข้อมูลเกี่ยวกับการใช้ adb
เพื่อวางอุปกรณ์ใน Doze โปรดดู
ทดสอบกับ Doze
และสแตนด์บายแอป
ที่เก็บข้อมูลสแตนด์บายแอป
คุณใช้ 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