[DESCRIPTION]
記憶體不足時常發生卡頓,甚至是當機重新開機問題,需要盡量減少記憶體不足情況的發生
[SOLUTION]
(1)減少背景程序的數量
修改frameworks\base\services\core\java\com\android\server\am\ProcessList.java
static final int MAX_CACHED_APPS = 32; // 改為 static final int MAX_CACHED_APPS = 8;
或者/frameworks/base/services/core/java/com/android/server/am/ActivityManagerConstants.java
- private static final int DEFAULT_MAX_CACHED_PROCESSES = 32;
複制代碼
(2)調整Low Memory Killer minifree門限值,frameworks\base\services\core\java\com\android\server\am\ProcessList.java中,
調整下面的mOomMinFreeHigh裡面的後三項 ,分别增大1.1倍、1.2倍、1.5倍。
- // These are the high-end OOM level limits. This is appropriate for a
- // 1280x800 or larger screen with around 1GB RAM. Values are in KB.
- private final int[] mOomMinFreeHigh = new int[] {
- 73728, 92160, 110592,
- 129024, 147456, 184320
- };