電源分析器
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
從 Android Studio Hedgehog 開始,電源分析器會在裝置上顯示耗電量。您可以在裝置端電源軌監控器 (ODPM) 中查看這項新資料。系統會按照名為「電源軌」的子系統區隔資訊。如需支援的子系統清單,請參閱「可分析的電源軌」。
系統追蹤記錄會記載並顯示耗電量資料,此為 CPU 分析器功能的一環。這項資料會透過圖表,說明裝置耗電量與應用程式內操作的關聯。電源分析器能夠以圖表的方式呈現這項資料。
可分析的電源軌
ODPM 會針對所有可分析的電源軌製作報告,此功能適用於 Android 10 (API 級別 29) 以上版本,以及 Pixel 6 和後續機型。
表 1. 系統提供哪些電源軌的報告資料,會因使用的裝置而異。
電源軌名稱 |
說明 |
CPU (大) |
CPU (大) 核心的耗電量。 |
CPU (小) |
CPU (小) 核心的耗電量。 |
CPU (中) |
CPU (中) 核心的耗電量。 |
鏡頭 |
鏡頭感應器的耗電量。 |
行動網路 |
行動網路感應器的耗電量。 |
螢幕 |
螢幕的耗電量。 |
GPS |
GPS 感應器的耗電量。 |
GPU |
GPU 感應器的耗電量。 |
記憶體 |
RAM 記憶體感應器的耗電量。 |
感應器核心 |
其他裝置感應器的耗電量。 |
UFS (磁碟) |
磁碟感應器的耗電量。 |
WLAN |
Wi-Fi 感應器的耗電量。 |
如果是不支援 ODPM 的裝置,可透過 Coulomb 計數器和電池測量器提供耗電量資料。
表 2. 耗電量資料。
姓名 |
說明 |
容量 |
剩餘電量百分比 (%)。 |
電量 |
剩餘電池電量,以微安小時 (μAh) 為單位。 |
電流 |
瞬間電流,以微安 (µA) 為單位。 |
透過電源分析器剖析耗電量的情境範例
假設您要建構的應用程式需要透過網路下載素材資源。您想瞭解個別/大量下載時,WLAN 電源軌的耗電量如何變化。
情境 A:應用程式分別發出多個網路要求,以便透過 WLAN 下載素材資源。
情境 B:應用程式發出一項網路要求,以便透過 WLAN 下載極大量的素材資源。
如上述情境所示,這兩份系統追蹤記錄會根據您觸發下載的方式,顯示 WLAN 電源軌上不同的耗電量特徵。
雖然前述範例演示了在不同情境下測量耗電量的簡單方法,但也證明您可以透過這些程序為應用程式建構更複雜的 A/B 版本測試。您可以利用這些測試,盡可能減少不同功能的耗電量,或同一功能以不同方式使用時的耗電量。
重要注意事項
- ODPM 是在裝置層級測量耗電量,而非針對任一特定應用程式。您可以依據 ODPM 的耗電量資訊,查看對應的應用程式前景/背景操作,瞭解兩者間的關聯。也是因為這樣,您可能會在耗電量資料中看到雜訊,具體視讀取 ODPM 資料時,裝置中實際使用的應用程式數量而定。
- 電源分析器會讀取 ODPM 的耗電量資料,這項功能僅適用於搭載 Android 10 (API 級別 29) 以上版本的 Pixel 6 和後續機型。
- 部分電源軌資料可能僅針對已採行 ODPM 的裝置提供。
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2023-12-01 (世界標準時間)。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"缺少我需要的資訊"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"過於複雜/步驟過多"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"過時"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻譯問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"示例/程式碼問題"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"其他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"容易理解"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"確實解決了我的問題"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"其他"
}]
{"lastModified": "\u4e0a\u6b21\u66f4\u65b0\u6642\u9593\uff1a2023-12-01 (\u4e16\u754c\u6a19\u6e96\u6642\u9593)\u3002"}
[[["容易理解","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"]],["上次更新時間:2023-12-01 (世界標準時間)。"]]