ตั้งแต่ Android 14 เป็นต้นไป โหมดพลังงานใหม่ชื่อ GAME
ในเฟรมเวิร์กประสิทธิภาพแบบไดนามิกของ Android (ADPF) จะช่วยให้คุณปรับแต่งประสิทธิภาพของโทรศัพท์ขณะเล่นเกมได้ GAME
จะแจ้งไปยัง Power HAL ว่าแอปเกมอยู่เบื้องหน้า การแสดงข้อมูลนี้ช่วยให้ HAL พลังงานใช้กลยุทธ์การจัดการพลังงานเมื่อเล่นเกม เพื่อให้ผู้ใช้ได้รับประสบการณ์การใช้งานที่มีประสิทธิภาพและเสถียร
Android 13 เปิดตัวโหมดพลังงานใหม่ชื่อ GAME_LOADING
ใน ADPF เพื่อปรับปรุงเวลาในการโหลดของเกม GAME_LOADING
ระบุว่าแอปเกมอยู่ในสถานะการโหลดหรือไม่เพื่อให้ HAL พลังงานสามารถเพิ่มประสิทธิภาพการโหลดได้ บ่งชี้นี้ช่วยให้ HAL พลังงานสามารถระบุมาตรการเพิ่มประสิทธิภาพที่จะช่วยเร่งเวลาในการโหลดเกมได้
หน้านี้จะอธิบายวิธีที่แอปเกมส่งสถานะเกมไปยัง Power HAL, อธิบายวิธีกำหนดค่า Power HAL เพื่อใช้ประโยชน์จากในอุปกรณ์ รวมถึงวิธีทดสอบการติดตั้งใช้งาน Power HAL
การตรวจจับและการแจ้งเตือนโหมดพลังงาน
ส่วนนี้จะอธิบายวิธีที่ตัวจัดการพลังงานจัดการโหมด GAME
และ GAME_LOADING
โหมดพลังงานสำหรับเล่นเกม
โหมดพลังงานใหม่ GAME
ใน Android 14 จะบ่งบอกให้บริการจัดการพลังงานทราบว่าผู้ใช้กำลังเล่นเกม เมื่อ HAL พลังงานได้รับการแจ้งเตือนเกี่ยวกับGAME
โหมดดังกล่าว ก็จะสามารถปรับกำลังไฟเพื่อเพิ่มประสิทธิภาพ ลดอุณหภูมิ และยืดอายุการใช้งานแบตเตอรี่ขณะเล่นเกม
รูปภาพต่อไปนี้อธิบายขั้นตอนการส่งข้อมูลไปยัง Power HAL เพื่อระบุโหมดพลังงาน GAME
รูปที่ 1 ข้อมูลแสดงว่ากำลังเล่นเกม
ระบบจะตั้งค่าโหมดพลังงาน GAME
ให้กับแอปที่มี appCategory
AndroidManifest.xml
เสมอGAME
โหมดพลังงาน GAME_LOADING
โหมดการเพิ่มประสิทธิภาพการโหลดจะทำงานโดยตรวจจับเมื่อแอปเกมอยู่ในสถานะการโหลดและแจ้งให้ HAL พลังงานทราบ Android 13 เปิดตัวสถานะเกมใหม่ชื่อ isLoading
ใน API สำหรับนักพัฒนาแอป
สถานะเกมนี้ใช้โหมดพลังงาน GAME_LOADING
แบบใหม่ในบริการจัดการพลังงานเพื่อแจ้ง HAL พลังงานเกี่ยวกับสถานะเกมระดับบนสุด เมื่อ HAL พลังงานได้รับการแจ้งเตือนสถานะการโหลดเกมแล้ว ก็จะปรับการตั้งค่าประสิทธิภาพของแพลตฟอร์มและอัตราสัญญาณนาฬิกาของ CPU ซึ่งส่งผลให้เวลาในการโหลดดีขึ้น
หากต้องการระบุว่าเกมกำลังโหลดอยู่ แอปเกมจะใช้แดชบอร์ดเกมเพื่อตั้งค่าสถานะ isLoading
ในเครื่องมือจัดการเกม ตัวจัดการเกมจะส่งสถานะนี้ไปยังบริการตัวจัดการเกม ซึ่งใช้ setPowerMode
กับโหมดพลังงาน GAME_LOADING
ใหม่เพื่อเรียกใช้บริการตัวจัดการพลังงาน โหมดพลังงาน GAME_LOADING
จะบ่งบอกให้ Power HAL ทราบว่าเกมอยู่ในสถานะกำลังโหลดเพื่อให้ Power HAL ช่วยเพิ่มประสิทธิภาพการโหลด
รูปภาพต่อไปนี้อธิบายการไหลของข้อมูลจากแอปไปยัง Power HAL เพื่อระบุสถานะการโหลด
รูปที่ 2 โฟลว์ข้อมูลเพื่อระบุว่าเกมอยู่ในสถานะกำลังโหลด
แดชบอร์ดเกมช่วยให้ผู้ใช้เปิดหรือปิดฟีเจอร์เพิ่มประสิทธิภาพการโหลดได้ด้วยการตั้งค่าประสิทธิภาพ การตั้งค่าประสิทธิภาพจะปิดอยู่โดยค่าเริ่มต้นเสมอ
ปรับแต่ง Power HAL โดยใช้ GAME และ GAME_LOADING
ในการใช้ประโยชน์จากโหมด GAME
และ GAME_LOADING
OEM ต้องปรับแต่งการใช้งาน Power HAL
เนื่องจากการจัดการพลังงานและการเพิ่มประสิทธิภาพนั้นขึ้นอยู่กับฮาร์ดแวร์โดยเฉพาะ จึงไม่มีการใช้งานอ้างอิงสำหรับโหมด GAME
หรือ GAME_LOADING
จนกว่าจะมีการเผยแพร่การใช้งานอ้างอิงสำหรับอุปกรณ์ Google Pixel
หากต้องการปรับปรุงประสิทธิภาพในโหมด GAME
และ GAME_LOADING
OEM สามารถเลือกที่จะใช้มาตรการต่อไปนี้ร่วมกัน
- คงอัตราเฟรม
- เพิ่มความเร็วนาฬิกาของ CPU
- ลดการจำกัดอุณหภูมิชั่วคราว
- กำหนดลำดับความสำคัญของ CPU ให้สูงขึ้นสำหรับแอปเกมที่ทำงานอยู่เบื้องหน้า
- ลดการเพิ่มประสิทธิภาพ CPU ที่ปรับสำหรับแอปทั่วไปที่ไม่ใช่เกม
- เพิ่มประสิทธิภาพกลยุทธ์การกระจายกำลังที่เกี่ยวข้องกับความร้อน
ทดสอบการใช้งานโหมดเกม
หากต้องการทดสอบการใช้งานโหมด GAME
ให้ใช้การทดสอบที่ขึ้นต้นด้วย testGamePowerMode_
ใน GameManagerServiceTests.java
ทดสอบการติดตั้งใช้งาน GAME_LOADING
หากต้องการทดสอบการติดตั้งใช้งานโหมด GAME_LOADING
ให้ใช้ android.gamemanager.cts.GameManagerTest#testSetGameContext
การทดสอบนี้ตรวจสอบว่า GameManager::setGameContext()
ที่มีบริบท isLoading
เรียกใช้โหมดการโหลดเกมใน Power HAL ในโหมดประสิทธิภาพหรือไม่