適用於 Android 的電源配置文件,適用於 Android 的電源配置文件

電池使用信息來自電池使用統計數據和電源配置文件值。

電池使用統計

該框架通過跟踪設備組件在不同狀態下花費的時間來自動確定電池使用統計數據。隨著組件(Wi-Fi 芯片組、蜂窩無線電、藍牙、GPS、顯示器、CPU)改變狀態(關閉/開啟、空閒/全功率、低/高亮度等),控制服務向框架 BatteryStats 服務報告。 BatteryStats 隨著時間的推移收集信息並將其存儲以在重新啟動時使用。該服務不直接跟踪電池電流消耗,而是收集可用於估算不同組件電池消耗的計時信息。

該框架使用以下方法收集統計信息:

  • 。知道組件更改的服務將狀態更改推送到 BatteryStats 服務。
  • 。對於應用程序使用的 CPU 等組件,框架會自動在轉換點(例如啟動或停止 Activity)處提取數據以拍攝快照。

資源消耗與使用資源的應用程序相關聯。當多個應用程序同時使用一個資源(例如阻止系統掛起的喚醒鎖)時,框架會在這些應用程序之間分配消耗,儘管不一定相等。

為避免丟失關機事件的使用統計信息,這可能表明電池功耗問題(即由於電池剩餘容量為零而發生關機),框架大約每 30 分鐘閃爍一次統計信息。

電池使用統計完全由框架處理,不需要 OEM 修改。

電源配置文件值

注意:設備製造商必須提供組件功率配置文件,該配置文件定義組件的電流消耗值以及組件隨時間推移導致的大致電池消耗。此配置文件在platform/frameworks/base/core/res/res/xml/power_profile.xml中定義。有關這些設置的指導,請參閱功率值

在功率配置文件中,功耗以額定電壓下的電流消耗的毫安 (mA) 為單位指定,並且可以是以微安 (uA) 為單位指定的分數值。該值應該是電池消耗的 mA,而不是適用於與電池消耗的電流不對應的電源軌的值。

例如,顯示器電源配置文件指定了將顯示器保持在最低亮度和最高亮度所需的 mA 電流。為了確定保持顯示器開啟的電力成本(即顯示組件消耗的電池電量),框架跟踪每個亮度級別所花費的時間,然後將這些時間間隔乘以內插的顯示器亮度成本。

該框架還將每個應用程序的 CPU 時間乘以以特定速度運行 CPU 所需的 mA。此計算通過執行 CPU 代碼建立應用程序消耗多少電池的比較排名(作為前台應用程序的時間和包括後台活動的總時間分別報告)。

,

電池使用信息來自電池使用統計數據和電源配置文件值。

電池使用統計

該框架通過跟踪設備組件在不同狀態下花費的時間來自動確定電池使用統計數據。隨著組件(Wi-Fi 芯片組、蜂窩無線電、藍牙、GPS、顯示器、CPU)改變狀態(關閉/開啟、空閒/全功率、低/高亮度等),控制服務向框架 BatteryStats 服務報告。 BatteryStats 隨著時間的推移收集信息並將其存儲以在重新啟動時使用。該服務不直接跟踪電池電流消耗,而是收集可用於估算不同組件電池消耗的計時信息。

該框架使用以下方法收集統計信息:

  • 。知道組件更改的服務將狀態更改推送到 BatteryStats 服務。
  • 。對於應用程序使用的 CPU 等組件,框架會自動在轉換點(例如啟動或停止 Activity)處提取數據以拍攝快照。

資源消耗與使用資源的應用程序相關聯。當多個應用程序同時使用一個資源(例如阻止系統掛起的喚醒鎖)時,框架會在這些應用程序之間分配消耗,儘管不一定相等。

為避免丟失關機事件的使用統計信息,這可能表明電池功耗問題(即由於電池剩餘容量為零而發生關機),框架大約每 30 分鐘閃爍一次統計信息。

電池使用統計完全由框架處理,不需要 OEM 修改。

電源配置文件值

注意:設備製造商必須提供組件功率配置文件,該配置文件定義組件的電流消耗值以及組件隨時間推移導致的大致電池消耗。此配置文件在platform/frameworks/base/core/res/res/xml/power_profile.xml中定義。有關這些設置的指導,請參閱功率值

在功率配置文件中,功耗以額定電壓下的電流消耗的毫安 (mA) 為單位指定,並且可以是以微安 (uA) 為單位指定的分數值。該值應該是電池消耗的 mA,而不是適用於與電池消耗的電流不對應的電源軌的值。

例如,顯示器電源配置文件指定了將顯示器保持在最低亮度和最高亮度所需的 mA 電流。為了確定保持顯示器開啟的電力成本(即顯示組件消耗的電池電量),框架跟踪每個亮度級別所花費的時間,然後將這些時間間隔乘以內插的顯示器亮度成本。

該框架還將每個應用程序的 CPU 時間乘以以特定速度運行 CPU 所需的 mA。此計算通過執行 CPU 代碼建立應用程序消耗多少電池的比較排名(作為前台應用程序的時間和包括後台活動的總時間分別報告)。