diff options
| author | 2025-02-12 11:37:36 -0800 | |
|---|---|---|
| committer | 2025-02-12 11:37:36 -0800 | |
| commit | 099e51c728f29aa0649733146cf13421cda5d24e (patch) | |
| tree | 1c97c90a4f89949e369083ad9254f43971a58257 | |
| parent | 8dcf2e21ec6c59564a0d337533e052a3a84b5027 (diff) | |
| parent | 221b19e9c0ee2763b3594e09fb175df0fc7ae128 (diff) | |
Merge "Lower SMS background importance" into main
| -rw-r--r-- | services/core/java/com/android/server/am/flags.aconfig | 11 | ||||
| -rw-r--r-- | services/core/java/com/android/server/appbinding/AppBindingConstants.java | 13 |
2 files changed, 21 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/am/flags.aconfig b/services/core/java/com/android/server/am/flags.aconfig index 2beeea7ef89e..27c384a22fb6 100644 --- a/services/core/java/com/android/server/am/flags.aconfig +++ b/services/core/java/com/android/server/am/flags.aconfig @@ -312,3 +312,14 @@ flag { purpose: PURPOSE_BUGFIX } } + +flag { + name: "lower_sms_oom_importance" + namespace: "backstage_power" + description: "Lower messaging app process oom importance to PERCEPTIBLE_APP_ADJ + 1." + bug: "372511805" + is_fixed_read_only: true + metadata { + purpose: PURPOSE_BUGFIX + } +} diff --git a/services/core/java/com/android/server/appbinding/AppBindingConstants.java b/services/core/java/com/android/server/appbinding/AppBindingConstants.java index 71847694b1d8..561cc0ef0a3b 100644 --- a/services/core/java/com/android/server/appbinding/AppBindingConstants.java +++ b/services/core/java/com/android/server/appbinding/AppBindingConstants.java @@ -102,9 +102,16 @@ public class AppBindingConstants { boolean smsServiceEnabled = parser.getBoolean(SMS_SERVICE_ENABLED_KEY, true); - int smsAppBindFlags = parser.getInt( - SMS_APP_BIND_FLAGS_KEY, - Context.BIND_NOT_VISIBLE | Context.BIND_FOREGROUND_SERVICE); + int smsAppBindFlags; + if (com.android.server.am.Flags.lowerSmsOomImportance()) { + smsAppBindFlags = parser.getInt( + SMS_APP_BIND_FLAGS_KEY, + Context.BIND_ALMOST_PERCEPTIBLE | Context.BIND_FOREGROUND_SERVICE); + } else { + smsAppBindFlags = parser.getInt( + SMS_APP_BIND_FLAGS_KEY, + Context.BIND_NOT_VISIBLE | Context.BIND_FOREGROUND_SERVICE); + } long serviceStableConnectionThresholdSec = parser.getLong( SERVICE_STABLE_CONNECTION_THRESHOLD_SEC_KEY, TimeUnit.MINUTES.toSeconds(2)); |