Change TOP_TO_FGS_GRACE_DURATION to be DeviceConfig

It was still a global setting.

Bug: n/a
Test: Manual test using the following commands
- `dumpsys activity settings | grep -w top_to_fgs_grace_duration`
- `device_config put activity_manager top_to_fgs_grace_duration 5000`
- also adb reboot and make sure it's persisted

Change-Id: I5d058bc7a6845e4c154c5bacef5489b0be512d68
This commit is contained in:
Makoto Onuki
2022-12-08 10:04:04 -08:00
parent 06a7fbc4cb
commit c8de4e31b3

View File

@@ -513,7 +513,7 @@ final class ActivityManagerConstants extends ContentObserver {
// Allow app just moving from TOP to FOREGROUND_SERVICE to stay in a higher adj value for
// this long.
public long TOP_TO_FGS_GRACE_DURATION = DEFAULT_TOP_TO_FGS_GRACE_DURATION;
public volatile long TOP_TO_FGS_GRACE_DURATION = DEFAULT_TOP_TO_FGS_GRACE_DURATION;
/**
* Allow app just leaving TOP with an already running ALMOST_PERCEPTIBLE service to stay in
@@ -1142,6 +1142,8 @@ final class ActivityManagerConstants extends ContentObserver {
case KEY_LOW_SWAP_THRESHOLD_PERCENT:
updateLowSwapThresholdPercent();
break;
case KEY_TOP_TO_FGS_GRACE_DURATION:
updateTopToFgsGraceDuration();
default:
break;
}
@@ -1359,8 +1361,6 @@ final class ActivityManagerConstants extends ContentObserver {
DEFAULT_PROCESS_START_ASYNC);
MEMORY_INFO_THROTTLE_TIME = mParser.getLong(KEY_MEMORY_INFO_THROTTLE_TIME,
DEFAULT_MEMORY_INFO_THROTTLE_TIME);
TOP_TO_FGS_GRACE_DURATION = mParser.getDurationMillis(KEY_TOP_TO_FGS_GRACE_DURATION,
DEFAULT_TOP_TO_FGS_GRACE_DURATION);
TOP_TO_ALMOST_PERCEPTIBLE_GRACE_DURATION = mParser.getDurationMillis(
KEY_TOP_TO_ALMOST_PERCEPTIBLE_GRACE_DURATION,
DEFAULT_TOP_TO_ALMOST_PERCEPTIBLE_GRACE_DURATION);
@@ -1790,6 +1790,13 @@ final class ActivityManagerConstants extends ContentObserver {
DEFAULT_LOW_SWAP_THRESHOLD_PERCENT);
}
private void updateTopToFgsGraceDuration() {
TOP_TO_FGS_GRACE_DURATION = DeviceConfig.getLong(
DeviceConfig.NAMESPACE_ACTIVITY_MANAGER,
KEY_TOP_TO_FGS_GRACE_DURATION,
DEFAULT_TOP_TO_FGS_GRACE_DURATION);
}
private void updateMinAssocLogDuration() {
MIN_ASSOC_LOG_DURATION = DeviceConfig.getLong(
DeviceConfig.NAMESPACE_ACTIVITY_MANAGER, KEY_MIN_ASSOC_LOG_DURATION,