Also allow avoiding gfx acceleration at runtime

This change adds a way to make ActivityManager#isHighEndGfx() return
false at runtime by inspecting the value of ro.config.avoid_gfx_accel.
This is useful for running Android on Chrome OS devices, since a single
image can be made to run in both physical hardware and an emulator.

Bug: 65602168
Test: Added `ro.config.avoid_gfx_accel`, isHighEndGfx() returned false.
Change-Id: I1599ad9b385f9ef43f923886e6d5358ae07632e0
This commit is contained in:
Luis Hector Chavez
2018-03-23 14:37:01 -07:00
parent 69d41b0521
commit 5e11e5e6cc
2 changed files with 6 additions and 2 deletions

View File

@@ -959,8 +959,10 @@ public class ActivityManager {
* @hide
*/
static public boolean isHighEndGfx() {
return !isLowRamDeviceStatic() &&
!Resources.getSystem().getBoolean(com.android.internal.R.bool.config_avoidGfxAccel);
return !isLowRamDeviceStatic()
&& !RoSystemProperties.CONFIG_AVOID_GFX_ACCEL
&& !Resources.getSystem()
.getBoolean(com.android.internal.R.bool.config_avoidGfxAccel);
}
/**

View File

@@ -31,6 +31,8 @@ public class RoSystemProperties {
SystemProperties.get("ro.control_privapp_permissions");
// ------ ro.config.* -------- //
public static final boolean CONFIG_AVOID_GFX_ACCEL =
SystemProperties.getBoolean("ro.config.avoid_gfx_accel", false);
public static final boolean CONFIG_LOW_RAM =
SystemProperties.getBoolean("ro.config.low_ram", false);
public static final boolean CONFIG_SMALL_BATTERY =