با شروع اندروید 14، یک حالت قدرت جدید به نام GAME
در چارچوب عملکرد پویای اندروید (ADPF) امکان سفارشی سازی عملکرد تلفن را در حین استفاده از بازی فراهم می کند. GAME
به Power HAL نشان می دهد که یک برنامه بازی در پیش زمینه است. این نشانگر به Power HAL اجازه میدهد تا استراتژیهای مدیریت انرژی را هنگام انجام بازی اتخاذ کند تا کاربر عملکرد پایدار و بهبود یافتهای را تجربه کند.
برای بهبود زمان بارگذاری بازی، اندروید 13 یک حالت قدرت جدید به نام GAME_LOADING
در ADPF معرفی میکند. GAME_LOADING
نشان میدهد که آیا یک برنامه بازی در حالت بارگیری است تا Power HAL بتواند بارگذاری را تقویت کند. این نشانگر به Power HAL اجازه می دهد تا اقدامات افزایش عملکرد را ارائه دهد که می تواند زمان بارگذاری بازی را سرعت بخشد.
این صفحه توضیح میدهد که چگونه برنامه بازی وضعیت بازی را به Power HAL منتقل میکند، نحوه پیکربندی Power HAL را برای استفاده از آن در دستگاههای خود و همچنین نحوه آزمایش پیادهسازی Power HAL را توضیح میدهد.
تشخیص و اعلان حالت Power
این بخش نحوه مدیریت Power Manager با حالت های GAME
و GAME_LOADING
را توضیح می دهد.
حالت پاور بازی
حالت پاور جدید GAME
در اندروید 14 به سرویس Power Manager نشان می دهد که کاربر در حال انجام یک بازی است. هنگامی که Power HAL از حالت GAME
مطلع می شود، می تواند قدرت را برای بهبود عملکرد، کاهش دما و افزایش عمر باتری در حین انجام بازی تنظیم کند.
شکل زیر جریان اطلاعات به Power HAL را برای نشان دادن حالت پاور GAME
توضیح می دهد:
شکل 1. جریان اطلاعات برای نشان دادن اینکه یک بازی در حال انجام است.
حالت روشن/خاموش GAME
همیشه برای برنامههای دارای یک appCategory
از GAME
در AndroidManifest.xml
تنظیم میشود.
حالت برق GAME_LOADING
حالت تقویت بارگذاری با تشخیص زمانی که یک برنامه بازی در حالت بارگیری است و اطلاع دادن به Power HAL کار می کند. اندروید 13 حالت بازی جدیدی به نام isLoading
را در API رو به توسعهدهنده معرفی میکند. این حالت بازی از حالت برق جدید GAME_LOADING
در سرویس Power Manager استفاده میکند تا Power HAL را در مورد وضعیت سطح بالای بازی مطلع کند. هنگامی که Power HAL از وضعیت بارگیری بازی مطلع شد، میتواند تنظیمات عملکرد پلتفرم و نرخ ساعت پردازنده را تنظیم کند که منجر به بهبود زمان بارگذاری میشود.
برای نشان دادن اینکه یک بازی در حال بارگیری است، برنامه بازی از داشبورد بازی استفاده می کند تا وضعیت isLoading
را در مدیر بازی تنظیم کند. Game Manager این حالت را به سرویس Game Manager منتقل می کند، که از setPowerMode
با حالت برق جدید GAME_LOADING
برای فراخوانی سرویس Power Manager استفاده می کند. حالت پاور 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 را آزمایش کنید
برای آزمایش اجرای حالت GAME
، از تستهای پیشوند testGamePowerMode_
در GameManagerServiceTests.java
استفاده کنید.
اجرای GAME_LOADING را آزمایش کنید
برای آزمایش اجرای حالت GAME_LOADING
، از android.gamemanager.cts.GameManagerTest#testSetGameContext
استفاده کنید. این تست بررسی می کند که GameManager::setGameContext()
با زمینه isLoading
حالت بارگیری بازی را در Power HAL در حالت عملکرد فراخوانی می کند یا خیر.