android 11
android 版本
android 安全功能
檔案級加密(fbe)
ota更新
a/b系統更新(無縫更新)
非a/b系統更新
動態分割槽
android 平台測試
monkey測試
效能與功耗
兩項使用者指標:
可**、可察覺的效能;
耗時操作所需的時間長短;
容量和抖動:
容量, 是裝置在一段時間內擁有的某種資源的總量。這種資源可以是 cpu 資源、gpu 資源、i/o 資源、網路資源、儲存裝置頻寬或其他類似指標。
抖動, 會妨礙系統快速執行,抖動是一種隨機的系統行為,會阻止可察覺任務的執行。
記憶體消耗, 雖然消耗本身不是效能問題,但是它可能會通過 lowmemorykiller 開銷、服務重啟和頁面快取顛簸引起抖動。
與負載能力相關的卡頓:
調節器反應緩慢(cpu)
, cpu 頻率調節器必須能對突發性的工作負載做出快速響應。;
溫控調頻, 當裝置必須減少整體熱輸出時,則會發生溫控調頻,通常通過減少 cpu、gpu 和 dram 時鐘週期數來執行。;
與抖動相關的卡頓:
應用執行緒排程程式延遲: 排程程式延遲是最明顯的抖動徵兆,具體表現為:儘管本應執行的程序處於就緒狀態,但在相當長的一段時間內並未執行。
中斷流量
長 softirq
驅動程式停用搶占或 irq 的時間過長
錯誤使用工作佇列
框架鎖爭用: 框架鎖爭用可能造成卡頓或其他效能問題。框架鎖爭用通常是由 activitymanagerservice 鎖引起的,但也可能出現在其他鎖中。如果您正在修改在 system_server 內部執行的**,切記要避免長時間持有鎖(尤其是 activitymanagerservice 鎖)
. binder 鎖爭用
程序內的 fd 爭用
不必要的 cpu 空閒轉換: 執行緒a 在cpu1 上執行;執行緒a 喚醒執行緒b;執行緒b 開始在cpu2 上執行;執行緒a 立即進入睡眠狀態,待執行緒b 完成其當前工作後,由執行緒b 將執行緒a 喚醒;如果 cpu 2 空閒,它必須回到活動狀態,然後執行緒 b 才可以執行。根據 soc 和空閒的深度,執行緒 b 可能需要等待幾十微秒才能開始執行。
日誌記錄: 日誌記錄並非不會占用 cpu 週期或記憶體,因此,請勿濫用日誌緩衝區。日誌記錄會消耗應用(直接)和日誌守護程式的週期。在裝置出庫之前,請刪除全部除錯日誌。
i/o 問題
激進式小任務打包: 一些排程程式支援將小任務打包到單個 cpu 核心上,從而讓更多 cpu 在更長時間內保持空閒,以此降低功耗。
頁面快取顛簸: 某個檔案被讀取的位元組數超過了磁碟上該檔案的總大小,毫無疑問,您遇到了頁面快取顛簸問題。
評估效能
管理應用記憶體
效能提示(微優化)
構建系統
構建安卓
平台架構
安卓機頂盒軟體安卓
建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下mar...
mac下使用adb鏈結安卓手機教程
拿到一部新手機時,想通過在pc端利用adb鏈結安卓手機,具體步驟如下 1.首先將手機通過usb連線上pc,在手機端安卓乙個360手機助手 其實就是間接的安裝了adb驅動程式 2.其次在pc端安裝adb驅動程式,具體步驟參考 3.在pc端開啟終端,輸入 system profiler spusbdat...
安卓app公升級之安卓app簽名
2.使用者自定義的方式簽名 簽名是安卓的公升級的必須要求 載掉舊版本才能安裝新版本,即讓使用者把舊版本卸在裝新的,這樣使用者體驗肯定就不好了。使用者自定義的方式簽名具體流程如下 1 滑鼠右鍵單機專案,選擇export,出如下視窗 之後就按步驟要求就可以匯出乙個已經通過自定義密匙簽名的安卓apk和密匙...