با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
با شروع Android Studio Hedgehog، Power Profiler مصرف انرژی را در دستگاهها نشان میدهد. میتوانید این دادههای جدید را در مانیتور ریل برق دستگاه (ODPM) مشاهده کنید. اطلاعات را توسط زیرسیستم هایی به نام "Power Rails" تقسیم بندی می کند. برای لیستی از زیرسیستم های پشتیبانی شده، ریل های برق قابل مشاهده را ببینید.
System Trace داده های مصرف انرژی را ثبت و نمایش می دهد. این بخشی از نمایهگر CPU است. این دادهها به شما کمک میکنند مصرف انرژی دستگاه را به صورت بصری با اقداماتی که در برنامه شما انجام میشوند مرتبط کنید. Power Profiler تجسم این داده ها را فعال می کند.
شکل 1. نمونه ای از مصرف برق در ریل های برق مختلف.
ریل های برق قابل پروفیل
ODPM همه ریلهای برق قابل پروفایل را گزارش میکند و در Android 10 (سطح API 29) و بالاتر و در Pixel 6 و دستگاههای Pixel بعدی در دسترس است.
جدول 1. انتظار می رود در دسترس بودن ریل های قدرت جداگانه بر اساس دستگاه مورد استفاده تغییر کند.
نام ریل برق
توضیحات
سی پی یو بزرگ
انرژی توسط هسته بزرگ CPU مصرف می شود.
CPU کوچک
انرژی توسط هسته کوچک CPU مصرف می شود.
CPU Mid
انرژی توسط هسته مرکزی CPU مصرف می شود.
دوربین
انرژی توسط سنسور دوربین مصرف می شود.
سلولی
انرژی توسط سنسور سلولی مصرف می شود.
نمایش
مصرف برق توسط نمایشگر
جی پی اس
انرژی توسط سنسور GPS مصرف می شود.
پردازنده گرافیکی
انرژی توسط سنسور GPU مصرف می شود.
حافظه
انرژی توسط حسگر حافظه RAM مصرف می شود.
هسته سنسور
انرژی توسط سنسورهای دستگاه دیگر مصرف می شود.
UFS (دیسک)
انرژی توسط سنسور دیسک مصرف می شود.
WLAN
انرژی توسط سنسور Wifi مصرف می شود.
دستگاههایی که از ODPM پشتیبانی نمیکنند میتوانند دادههای مصرف انرژی را از طریق شمارندههای Coulomb و گیج باتری ارائه دهند.
جدول 2. داده های مصرف برق.
نام
توضیحات
ظرفیت
درصد باتری باقی مانده (%).
شارژ کنید
شارژ باقی مانده باتری در میکرو آمپر ساعت (µAh).
فعلی
جریان لحظه ای در میکرو آمپر (µA).
سناریوهای نمونه برای پروفایل مصرف برق از طریق Power Profiler
فرض کنید در حال ساخت اپلیکیشنی هستید که نیاز به دانلود دارایی ها از طریق شبکه دارد. شما می خواهید بدانید که چگونه مصرف برق ریل برق WLAN در حین بارگیری دارایی ها به صورت جداگانه در مقابل یک قطعه بزرگ تغییر می کند.
سناریوی الف: برنامه درخواستهای شبکه جداگانه برای دانلود داراییها از طریق WLAN میکند.
شکل 2. درخواست های شبکه فردی برای دانلود دارایی ها از طریق WLAN.
سناریوی B: برنامه یک درخواست شبکه برای دانلود یک دارایی بسیار بزرگ از طریق WLAN می کند.
شکل 3. درخواست های شبکه انفرادی برای دانلود یک دارایی بسیار بزرگ از طریق WLAN.
همانطور که در سناریوهای قبلی نشان داده شده است، دو ردیابی سیستم بر اساس نحوه شروع دانلود، نشانه های متفاوتی از مصرف برق در ریل برق WLAN را نشان می دهند.
اگرچه مثال قبلی روشی ساده برای اندازهگیری مصرف انرژی در سناریوهای مختلف است، اما روندی را نشان میدهد که با آن میتوانید تستهای A/B پیچیدهتری را برای برنامه خود بسازید. شما می توانید از این تست ها برای بهینه سازی مصرف انرژی در ویژگی های مختلف یا پیاده سازی های مختلف یک ویژگی استفاده کنید.
نکات مهم
ODPM مصرف انرژی را در سطح دستگاه اندازه گیری می کند - نه برای هیچ برنامه ای. میتوانید اطلاعات مصرف انرژی را از ODPM با آنچه در پیشزمینه یا پسزمینه برنامهتان اتفاق میافتد، مرتبط کنید. در نتیجه، میتوانید بر اساس تعداد برنامههای فعال در دستگاه در زمان خواندن دادههای ODPM، انتظار نویز در دادههای مصرف انرژی داشته باشید.
Power Profiler دادههای مصرف انرژی را از ODPM میخواند، که فقط در Pixel 6 و دستگاههای Pixel بعدی دارای Android 10 (سطح API 29) و بالاتر در دسترس است.
برخی از ریل های برق ممکن است فقط در برخی از دستگاه هایی که ODPM را اجرا می کنند در دسترس باشند.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Power Profiler\n\nStarting in Android Studio Hedgehog, the Power Profiler shows power consumption\non devices. You can view this new data in the On Device Power Rails Monitor (ODPM).\nIt segments the information by subsystems called \"Power Rails\". See [Profileable\npower rails](#power-rails) for a list of supported sub-systems.\n\nThe [System Trace](/studio/profile/cpu-profiler) records and displays power\nconsumption data. It is part of the CPU profiler This data helps you to visually\ncorrelate power consumption of the device with the actions occurring in your\napp. The Power Profiler enables visualizing this data.\n**Figure 1.** Example of power consumption in different power rails.\n\nProfileable power rails\n-----------------------\n\nThe ODPM reports all profileable power rails and is available in Android 10\n(API level 29) and higher and on Pixel 6 and subsequent Pixel devices.\n\n| Power rail name | Description |\n|-----------------|------------------------------------------------|\n| CPU Big | Power being consumed by the big CPU core. |\n| CPU Little | Power being consumed by the little CPU core. |\n| CPU Mid | Power being consumed by the mid CPU core. |\n| Camera | Power being consumed by the camera sensor. |\n| Cellular | Power being consumed by the cellular sensor. |\n| Display | Power being consumed by the display. |\n| GPS | Power being consumed by the GPS sensor. |\n| GPU | Power being consumed by the GPU sensor. |\n| Memory | Power being consumed by the RAM memory sensor. |\n| Sensor core | Power being consumed by other device sensors. |\n| UFS (disk) | Power being consumed by the Disk sensor. |\n| WLAN | Power being consumed by the Wifi sensor. |\n[**Table 1.** Availability of individual power rails is expected to\nchange based on the device being used.]\n\nDevices that don't support ODPM can offer power consumption data through Coulomb\ncounters and the battery gauge.\n\n| Name | Description |\n|----------|----------------------------------------------------------|\n| Capacity | The remaining battery percentage (%). |\n| Charge | The remaining battery charge in microampere-hours (µAh). |\n| Current | The instantaneous current in microampere (µA). |\n[**Table 2.** Power consumption data.]\n\nExample scenarios for profiling power consumption through the Power Profiler\n----------------------------------------------------------------------------\n\nAssume you are building an app that needs to download assets over the network.\nYou want to understand how the power consumption of WLAN power rail changes\nwhile downloading assets individually versus in a large chunk.\n\n**Scenario A:** The app makes individual network requests to download assets\nover WLAN.\n**Figure 2.** Individual network requests to download assets over WLAN.\n\n**Scenario B:** The app makes one network request to download a very large asset\nover WLAN.\n**Figure 3.** Individual network requests to download a very large asset over WLAN.\n\nAs shown in the preceding scenarios, the two system traces show different\nsignatures of power consumption in the WLAN power rail based on how you trigger\nthe download.\n\nEven though the preceding example is a simple way to measure power consumption\nin different scenarios, it demonstrates the process with which you can build\nmore sophisticated A/B tests for your app. You can use these tests to optimize\npower consumption across different features or different implementations of the\nsame feature.\n\nImportant notes\n---------------\n\n- ODPM measures power consumption at the device level---not specific to any app. You can correlate power consumption information from the ODPM to what's happening in your app foreground or background. As a result, you can expect noise in power consumption data based on how many apps are active in the device at the time of reading ODPM data.\n- Power Profiler reads power consumption data from the ODPM, which is only available on Pixel 6 and subsequent Pixel devices running Android 10 (API level 29) and higher.\n- Some power rails might only be available on some devices implementing ODPM."]]