summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Andy Yu <chingtangyu@google.com> 2023-12-12 20:40:55 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-12-12 20:40:55 +0000
commitedda401a688840b57b5b6508b9bd21ebc8420249 (patch)
treeb7d4006d6eb9a91fa6daf6f1acf675222621eae9
parentef448d6c8d2aaf9cba652a9a1ea4bb48a82fc5f4 (diff)
parente69b0afd7abcdca966c895e0986eb8736e3e2593 (diff)
Merge "Set Game Default Frame Rate to 60 when sysprop not set" into main
-rw-r--r--services/core/java/com/android/server/app/GameManagerService.java9
-rw-r--r--services/tests/mockingservicestests/src/com/android/server/app/GameManagerServiceTests.java14
2 files changed, 14 insertions, 9 deletions
diff --git a/services/core/java/com/android/server/app/GameManagerService.java b/services/core/java/com/android/server/app/GameManagerService.java
index b1825380bbdc..32d5cf587e0c 100644
--- a/services/core/java/com/android/server/app/GameManagerService.java
+++ b/services/core/java/com/android/server/app/GameManagerService.java
@@ -152,7 +152,6 @@ public final class GameManagerService extends IGameManagerService.Stub {
private static final String GAME_MODE_INTERVENTION_LIST_FILE_NAME =
"game_mode_intervention.list";
-
private final Context mContext;
private final Object mLock = new Object();
private final Object mDeviceConfigLock = new Object();
@@ -184,6 +183,7 @@ public final class GameManagerService extends IGameManagerService.Stub {
@GuardedBy("mUidObserverLock")
private final Set<Integer> mForegroundGameUids = new HashSet<>();
private final GameManagerServiceSystemPropertiesWrapper mSysProps;
+ private float mGameDefaultFrameRateValue;
@VisibleForTesting
static class Injector {
@@ -1559,6 +1559,10 @@ public final class GameManagerService extends IGameManagerService.Stub {
mPowerManagerInternal.setPowerMode(Mode.GAME_LOADING, false);
Slog.v(TAG, "Game power mode OFF (game manager service start/restart)");
mPowerManagerInternal.setPowerMode(Mode.GAME, false);
+
+ mGameDefaultFrameRateValue = (float) mSysProps.getInt(
+ PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE, 60);
+ Slog.v(TAG, "Game Default Frame Rate : " + mGameDefaultFrameRateValue);
}
private void sendUserMessage(int userId, int what, String eventForLog, int delayMillis) {
@@ -2217,8 +2221,7 @@ public final class GameManagerService extends IGameManagerService.Stub {
}
if (gameDefaultFrameRate()) {
gameDefaultFrameRate = isGameDefaultFrameRateEnabled
- ? (float) mSysProps.getInt(
- PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE, 0) : 0.0f;
+ ? mGameDefaultFrameRateValue : 0.0f;
}
return gameDefaultFrameRate;
}
diff --git a/services/tests/mockingservicestests/src/com/android/server/app/GameManagerServiceTests.java b/services/tests/mockingservicestests/src/com/android/server/app/GameManagerServiceTests.java
index 76d4d55f4d5d..9739e4b46063 100644
--- a/services/tests/mockingservicestests/src/com/android/server/app/GameManagerServiceTests.java
+++ b/services/tests/mockingservicestests/src/com/android/server/app/GameManagerServiceTests.java
@@ -2423,6 +2423,14 @@ public class GameManagerServiceTests {
}
}));
+ when(mSysPropsMock.getInt(
+ ArgumentMatchers.eq(PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE),
+ anyInt())).thenReturn(60);
+ when(mSysPropsMock.getBoolean(
+ ArgumentMatchers.eq(PROPERTY_PERSISTENT_GFX_GAME_DEFAULT_FRAME_RATE_ENABLED),
+ ArgumentMatchers.eq(true))).thenReturn(true);
+ gameManagerService.onBootCompleted();
+
// Set up a game in the foreground.
String[] packages = {mPackageName};
when(mMockPackageManager.getPackagesForUid(DEFAULT_PACKAGE_UID)).thenReturn(packages);
@@ -2430,12 +2438,6 @@ public class GameManagerServiceTests {
DEFAULT_PACKAGE_UID, ActivityManager.PROCESS_STATE_TOP, 0, 0);
// Toggle game default frame rate on.
- when(mSysPropsMock.getInt(
- ArgumentMatchers.eq(PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE),
- anyInt())).thenReturn(60);
- when(mSysPropsMock.getBoolean(
- ArgumentMatchers.eq(PROPERTY_PERSISTENT_GFX_GAME_DEFAULT_FRAME_RATE_ENABLED),
- ArgumentMatchers.eq(true))).thenReturn(true);
gameManagerService.toggleGameDefaultFrameRate(true);
// Verify that: