diff --git a/core/java/android/os/GraphicsEnvironment.java b/core/java/android/os/GraphicsEnvironment.java index 8292f26a8c6b8..aa4b83a5c3616 100644 --- a/core/java/android/os/GraphicsEnvironment.java +++ b/core/java/android/os/GraphicsEnvironment.java @@ -192,14 +192,15 @@ public class GraphicsEnvironment { // We only want to use ANGLE if the developer has explicitly chosen something other than // default driver. - final boolean requested = devOptIn.equals(ANGLE_GL_DRIVER_CHOICE_ANGLE); - if (requested) { + final boolean forceAngle = devOptIn.equals(ANGLE_GL_DRIVER_CHOICE_ANGLE); + final boolean forceNative = devOptIn.equals(ANGLE_GL_DRIVER_CHOICE_NATIVE); + if (forceAngle || forceNative) { Log.v(TAG, "ANGLE developer option for " + packageName + ": " + devOptIn); } final boolean gameModeEnabledAngle = isAngleEnabledByGameMode(context, packageName); - return requested || gameModeEnabledAngle; + return !forceNative && (forceAngle || gameModeEnabledAngle); } private int getVulkanVersion(PackageManager pm) { diff --git a/services/core/java/com/android/server/app/GameManagerService.java b/services/core/java/com/android/server/app/GameManagerService.java index 20606f0e9f4d1..8dce8e9e90ef3 100644 --- a/services/core/java/com/android/server/app/GameManagerService.java +++ b/services/core/java/com/android/server/app/GameManagerService.java @@ -385,9 +385,8 @@ public final class GameManagerService extends IGameManagerService.Stub { } public boolean isValid() { - return (mGameMode == GameManager.GAME_MODE_PERFORMANCE - || mGameMode == GameManager.GAME_MODE_BATTERY) - && (!mAllowDownscale || getCompatChangeId() != 0); + return mGameMode == GameManager.GAME_MODE_PERFORMANCE + || mGameMode == GameManager.GAME_MODE_BATTERY; } /** @@ -839,7 +838,7 @@ public final class GameManagerService extends IGameManagerService.Stub { } long scaleId = modeConfig.getCompatChangeId(); if (scaleId == 0) { - Slog.w(TAG, "Invalid downscaling change id " + scaleId + " for " + Slog.i(TAG, "Invalid downscaling change id " + scaleId + " for " + packageName); return; }