تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
بدءًا من Android Studio Hedgehog، يعرض محلّل Power Profiler استهلاك الطاقة على الأجهزة. يمكنك عرض هذه البيانات الجديدة في أداة مراقبة قضبان الطاقة على الجهاز (ODPM).
فهي تُقسم المعلومات حسب أنظمة فرعية تسمى "Power Rails". راجع مسارات الطاقة القابلة للتمييز للحصول على قائمة بالأنظمة الفرعية المتوافقة.
تسجل ميزة تتبُّع النظام بيانات استهلاك الطاقة وتعرضها. وهي جزء من محلّل وحدة المعالجة المركزية (CPU). وتساعدك هذه البيانات في الربط البصري بين استهلاك طاقة الجهاز بالإجراءات التي تحدث في تطبيقك. وتمكّن أداة تحليل الطاقة من عرض هذه البيانات بشكل مرئي.
الشكل 1. مثال على استهلاك الطاقة في قضبان مختلفة
للطاقة الكهربائية
قضبان كهربائية يمكن التعرّف عليها
يشير تقرير ODPM إلى كل مسارات الطاقة القابلة للتحليل ويتوفّر في نظام التشغيل Android 10
(مستوى واجهة برمجة التطبيقات 29) والإصدارات الأحدث وعلى هواتف Pixel 6 وأجهزة Pixel اللاحقة.
الجدول 1. من المتوقّع أن يتغيّر مدى توفُّر قضبان كهربائية فردية استنادًا إلى الجهاز المستخدَم.
اسم السكة الحديدية
الوصف
وحدة معالجة مركزية (CPU) كبيرة
الطاقة التي تستهلكها وحدة المعالجة المركزية الكبيرة (CPU)
وحدة معالجة مركزية (CPU) صغيرة
الطاقة التي تستهلكها وحدة المعالجة المركزية الصغيرة (CPU)
وحدة المعالجة المركزية متوسطة
الطاقة التي تستهلكها وحدة المعالجة المركزية المتوسطة الأساسية.
الكاميرا
الطاقة التي تستهلكها أداة الاستشعار في الكاميرا
شبكة الجوّال
الطاقة التي تستهلكها أداة استشعار شبكة الجوّال
الشاشة
الطاقة التي تستهلكها الشاشة
نظام تحديد المواقع العالمي (GPS)
الطاقة التي تستهلكها أداة استشعار نظام تحديد المواقع العالمي (GPS)
وحدة معالجة الرسومات
الطاقة التي تستهلكها أداة استشعار وحدة معالجة الرسومات
Memory
الطاقة التي تستهلكها أداة استشعار الذاكرة في ذاكرة الوصول العشوائي (RAM).
نواة أداة الاستشعار
تستهلك أجهزة الاستشعار الأخرى في الجهاز الطاقة.
UFS (قرص)
الطاقة التي تستهلكها أداة استشعار القرص
شبكة WLAN
الطاقة التي تستهلكها أداة استشعار Wi-Fi
يمكن للأجهزة التي لا تتيح استخدام ODPM أن توفر بيانات استهلاك الطاقة من خلال عدّادات كولوم وقياس البطارية.
الجدول 2. بيانات استهلاك الطاقة
الاسم
الوصف
السعة
النسبة المئوية المتبقية من طاقة البطارية (%)
تحصيل الرسوم
مستوى شحن البطارية المتبقي بوحدة الميكرو أمبير في الساعة (ميكرو أمبير في الساعة)
الحالي
التيار اللحظي بوحدة الميكرو أمبير (ميكرو أمبير)
أمثلة على سيناريوهات لتحليل استهلاك الطاقة من خلال أداة تحليل الطاقة
افترض أنك تنشئ تطبيقًا يحتاج إلى تنزيل الأصول عبر الشبكة.
تريد أن تفهم كيف يتغير استهلاك الطاقة لسكة حديدية WLAN أثناء تنزيل الأصول بشكل فردي مقابل مجموعة كبيرة.
السيناريو أ: يرسل التطبيق طلبات فردية إلى الشبكة لتنزيل مواد العرض عبر شبكة WLAN.
الشكل 2. طلبات الشبكات الفردية لتنزيل مواد العرض
عبر شبكة WLAN.
السيناريو (ب): يرسل التطبيق طلب شبكة واحدًا لتنزيل مادة عرض كبيرة جدًا
عبر شبكة WLAN.
الشكل 3. طلبات الشبكات الفردية لتنزيل مادة عرض كبيرة جدًا عبر شبكة WLAN.
كما هو موضح في السيناريوهات السابقة، يعرض تقريرا تتبع النظام إشارات مختلفة لاستهلاك الطاقة في شريط سلك الطاقة في WLAN استنادًا إلى كيفية بدء عملية التنزيل.
على الرغم من أن المثال السابق هو طريقة بسيطة لقياس استهلاك الطاقة في سيناريوهات مختلفة، فهو يوضح العملية التي من خلالها يمكنك إنشاء اختبارات أ/ب أكثر تعقيدًا لتطبيقك. يمكنك استخدام هذه الاختبارات لتحسين استهلاك الطاقة من خلال ميزات مختلفة أو عمليات تنفيذ مختلفة للميزة نفسها.
ملاحظات مهمة
يقيس ODPM استهلاك الطاقة على مستوى الجهاز، وليس خاصًا بأي تطبيق.
يمكنك ربط معلومات استهلاك الطاقة من ODPM بما يحدث في مقدمة التطبيق أو خلفيته. ونتيجة لذلك، يمكنك توقع حدوث ضجيج في بيانات استهلاك الطاقة بناءً على عدد التطبيقات النشطة في الجهاز
في وقت قراءة بيانات ODPM.
يقرأ أداة تحليل الطاقة بيانات استهلاك الطاقة من ODPM، وهي متاحة فقط على هواتف Pixel 6 وأجهزة Pixel اللاحقة التي تعمل بالإصدار 10 من Android (المستوى 29 من واجهة برمجة التطبيقات) والإصدارات الأحدث.
قد لا تتوفّر بعض قضبان التيار الكهربائي إلا على بعض الأجهزة التي تنفّذ بروتوكول ODPM.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","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-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],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."]]