以下頁面提供相關資訊,說明如何改善應用程式的記憶體用量。
一般記憶體指南
- 記憶體總覽
- 說明 Android 核心記憶體架構、RAM 限制,以及作業系統如何使用記憶體不足終止工具 (LMK) 平衡程序。
- 記憶體管理
- 說明開發人員在元件生命週期中發布資源、避免洩漏,以及在程序狀態之間轉換時管理記憶體的最佳做法。
- 瞭解及排解 Android 記憶體問題
- 全面概述 Android 記憶體架構、可用於分析的工具,以及實作練習,協助您找出並解決記憶體相關問題。
特定區域的最佳化
- 遊戲記憶體總覽
- 詳細說明記憶體預算、原生分配處理方式,以及專為使用遊戲引擎的應用程式量身打造的圖像資產管理指南。
- 最佳化點陣圖圖片
- 示範如何在圖片程式庫中,有效率地調整點陣圖素材資源的大小、解碼及快取。
- 管理及診斷 WebView 記憶體
- 說明 WebView 多程序記憶體模型,描述如何正確管理其生命週期以防止洩漏,並提供實用的工作流程來診斷記憶體問題。
- R8 程式碼最佳化
- 說明如何運用 R8 縮減 APK 大小、中繼資料負荷和執行階段記憶體用量。
本機記憶體偵錯工具
- Android Studio 工具
- 直接在 IDE 中提供即時堆積檢查、記憶體配置追蹤和洩漏偵測工作流程。
- Perfetto 堆積傾印探索工具
- 可深入分析原生和 Java/Kotlin 堆積傾印,找出保留的物件樹狀結構和匿名記憶體配置。
- 在裝置上擷取系統追蹤記錄
- 說明如何記錄裝置系統層級的追蹤記錄,以解決應用程式的效能相關錯誤。
- 在 Android 上偵錯記憶體用量
- 說明如何瞭解 Linux 記憶體管理,以及如何使用 dumpsys meminfo、Perfetto、原生堆積設定檔和堆積傾印等工具追蹤記憶體用量,並找出記憶體洩漏問題。
正式環境等級的記憶體工具
- Android Vitals:記憶體用量 (匿名 RSS + 交換空間)
- Android Vitals 會提供應用程式在正式版中的記憶體用量,並依前景、前景服務和背景服務的程序狀態細分。
- Android Vitals:點陣圖記憶體用量
- Android Vitals 會匯總 Android 裝置的資料,提供應用程式點陣圖記憶體用量的指標。
- Crashlytics 20.1.0
- 顯示生產環境的記憶體不足 (OOM) 例外狀況和記憶體限制器終止作業,並提供診斷背景資訊,協助您優先處理及修正欄位當機問題。
- ProfilingManager
- 進階 API,可讓應用程式以程式輔助方式,從實際使用者工作階段收集及上傳正式版堆積傾印和堆積設定檔。
其他資源
如要進一步瞭解記憶體,請參閱下列其他資源: