اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
ملفات الطاقة لنظام التشغيل Android
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتم الحصول على معلومات استخدام البطارية من إحصاءات استخدام البطارية وقيم الملف الشخصي للطاقة.
إحصاءات استخدام البطارية
يحدِّد إطار العمل تلقائيًا إحصاءات استخدام البطارية من خلال تتبُّع المدة التي تقضيها مكوّنات
الجهاز في حالات مختلفة. عندما تتغيّر حالات المكوّنات (شريحة Wi-Fi وجهاز البث الخلوي وبلوتوث ونظام تحديد المواقع العالمي (GPS)
وشاشة العرض ووحدة المعالجة المركزية (CPU)) (إيقاف/تشغيل، وضع السكون/الطاقة الكاملة، سطوع منخفض/عالٍ، وما إلى ذلك)، تُرسِل الخدمة المُتحكّمة
تقارير إلى خدمة BatteryStats في إطار العمل. يجمع تطبيق BatteryStats المعلومات بمرور الوقت ويخزّنها لاستخدامها عند إعادة التشغيل. لا تتتبّع الخدمة استهلاك تيار البطارية مباشرةً،
بل تجمع بدلاً من ذلك معلومات التوقيت التي يمكن استخدامها لتقدير استهلاك
البطارية من خلال المكوّنات المختلفة.
يجمع إطار العمل الإحصاءات باستخدام الطرق التالية:
- Push: تُرسِل الخدمات التي تكون على دراية بتغييرات المكوّنات تغييرات الحالة إلى خدمة
BatteryStats.
- سحب بالنسبة إلى المكوّنات، مثل استخدام التطبيقات لوحدة المعالجة المركزية، يسحب الإطار العمل البيانات تلقائيًا عند نقاط النقل (مثل بدء نشاط أو إيقافه) لالتقاط لقطة.
يرتبط استهلاك الموارد بالتطبيق الذي يستخدم المورد. عندما تستخدم عدة
تطبيقات موردًا في الوقت نفسه (مثل عمليات قفل الاستيقاظ التي تمنع النظام من
التعليق)، يوزّع إطار العمل الاستهلاك على هذه التطبيقات، ولكن ليس بالضرورة بالتساوي.
لتجنُّب فقدان إحصاءات الاستخدام لحدث إيقاف التشغيل، والذي قد يشير إلى مشاكل في استهلاك طاقة البطارية (أي يحدث إيقاف التشغيل لأنّ البطارية وصلت إلى سعة متبقية صفرية)، يعرض الإطار الإحصاءات كل 30 دقيقة تقريبًا.
يعالج إطار العمل إحصاءات استخدام البطارية بالكامل ولا يتطلّب تعديلات من المصنّعين الأصليّين للأجهزة.
قيم الملف الشخصي للطاقة
تحذير: على الشركات المصنّعة للأجهزة تقديم ملف تعريف استهلاك
الطاقة للمكوّن الذي يحدّد قيمة الاستهلاك الحالية للمكوّن ومعدل استهلاك
البطارية التقريبي الذي يتسبب فيه المكوّن بمرور الوقت. يتم تعريف هذا الملف الشخصي فيملف
platform/frameworks/base/core/res/res/xml/power_profile.xml.
للحصول على إرشادات حول هذه الإعدادات، يُرجى الاطّلاع على قيم الطاقة.
ضمن ملف الطاقة، يتم تحديد استهلاك الطاقة بوحدة ملي أمبير (mA) من استهلاك التيار عند جهد سمياني، ويمكن أن تكون قيمة كسرية محدّدة بوحدة ميكرو أمبير (uA). يجب أن تكون القيمة هي كثافة تيار mA المستهلك في البطارية، وليس قيمة تنطبق على سكة طاقة لا تتوافق مع كثافة التيار المستهلك من البطارية.
على سبيل المثال، يحدِّد ملف طاقة العرض مقدار التيار الكهربي بالمللي أمبير المطلوب لإبقاء الشاشة مفعَّلة
بأقل درجة سطوع وبأعلى درجة سطوع. لتحديد تكلفة الطاقة (أي كمية البطارية التي يتم استهلاكها من خلال مكوّن الشاشة) لإبقاء الشاشة مُضاءة، يتتبّع إطار العمل الوقت الذي يتم قضاؤه عند كل مستوى من مستويات السطوع، ثم يضرب هذه الفترات الزمنية بتكلفة سطوع الشاشة التي تمّت الاستقراء.
ويُضاعِف الإطار الزمني أيضًا وقت وحدة المعالجة المركزية لكل تطبيق بمللي أمبير المطلوب لتشغيل
وحدة المعالجة المركزية بسرعة معيّنة. يحدِّد هذا الحساب ترتيبًا مقارنًا لمقدار البطارية التي يستنزفها
التطبيق من خلال تنفيذ رمز وحدة المعالجة المركزية (يتم تسجيل الوقت الذي يقضيه التطبيق في المقدّمة وإجمالي الوقت بما في ذلك
النشاط في الخلفية بشكل منفصل).
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ 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 profiles for Android\n\nBattery use information is derived from battery use statistics and power profile values.\n\nBattery use statistics\n----------------------\n\nThe framework automatically determines battery use statistics by tracking how long device\ncomponents spend in different states. As components (Wi-Fi chipset, cellular radio, Bluetooth, GPS,\ndisplay, CPU) change states (OFF/ON, idle/full power, low/high brightness, etc.), the controlling\nservice reports to the framework BatteryStats service. BatteryStats collects information over time\nand stores it for use across reboots. The service doesn't track battery current draw directly,\nbut instead collects timing information that can be used to approximate battery\nconsumption by different components.\n\nThe framework gathers statistics using the following methods:\n\n- **Push**. Services aware of component changes push state changes to the BatteryStats service.\n- **Pull**. For components such as the CPU use by apps, the framework automatically pulls the data at transition points (such as starting or stopping an activity) to take a snapshot.\n\nResource consumption is associated with the application using the resource. When multiple\napplications simultaneously use a resource (such as wakelocks that prevent the system from\nsuspending), the framework spreads consumption across those applications, although not necessarily\nequally.\n\nTo avoid losing use statistics for a shutdown event, which may indicate battery power\nconsumption problems (i.e. shutdown occurs because the battery reached zero remaining capacity),\nthe framework flashes statistics approximately every 30 minutes.\n\nBattery use statistics are handled entirely by the framework and do not require OEM\nmodifications.\n\nPower profile values\n--------------------\n\n**Caution:** Device manufacturers must provide a component power\nprofile that defines the current consumption value for the component and the approximate battery\ndrain caused by the component over time. This profile is defined in\n[platform/frameworks/base/core/res/res/xml/power_profile.xml](https://android.googlesource.com/platform/frameworks/base/+/android16-release/core/res/res/xml/power_profile.xml).\nFor guidance on these settings, see [Power Values](/docs/core/power/values).\n\nWithin a power profile, power consumption is specified in milliamps (mA) of current draw at a\nnominal voltage and can be a fractional value specified in microamps (uA). The value should be the\nmA consumed at the battery and not a value applicable to a power rail that does not correspond to\ncurrent consumed from the battery.\n\nFor example, a display power profile specifies the mA of current required to keep the display on\nat minimum brightness and at maximum brightness. To determine the power cost (i.e the battery\ndrained by the display component) of keeping the display on, the framework tracks the time spent at\neach brightness level, then multiplies those time intervals by an interpolated display brightness\ncost.\n\nThe framework also multiplies the CPU time for each application by the mA required to run the\nCPU at a specific speed. This calculation establishes a comparative ranking of how much battery an\napplication consumes by executing CPU code (time as the foreground app and total time including\nbackground activity are reported separately)."]]