Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2a103f12 authored by Dianne Hackborn's avatar Dianne Hackborn
Browse files

Go: add features for low ram / normal ram devices.

Automatically populated from ActivityManager.isLowRamDevice().

Test: manual

Change-Id: I027b8ae0205c9793a91ffdd2635479610a62aff9
parent 284b5844
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -10736,6 +10736,8 @@ package android.content.pm {
    field public static final java.lang.String FEATURE_PC = "android.hardware.type.pc";
    field public static final java.lang.String FEATURE_PICTURE_IN_PICTURE = "android.software.picture_in_picture";
    field public static final java.lang.String FEATURE_PRINTING = "android.software.print";
    field public static final java.lang.String FEATURE_RAM_LOW = "android.hardware.ram.low";
    field public static final java.lang.String FEATURE_RAM_NORMAL = "android.hardware.ram.normal";
    field public static final java.lang.String FEATURE_SCREEN_LANDSCAPE = "android.hardware.screen.landscape";
    field public static final java.lang.String FEATURE_SCREEN_PORTRAIT = "android.hardware.screen.portrait";
    field public static final java.lang.String FEATURE_SECURELY_REMOVES_USERS = "android.software.securely_removes_users";
+2 −0
Original line number Diff line number Diff line
@@ -11448,6 +11448,8 @@ package android.content.pm {
    field public static final java.lang.String FEATURE_PC = "android.hardware.type.pc";
    field public static final java.lang.String FEATURE_PICTURE_IN_PICTURE = "android.software.picture_in_picture";
    field public static final java.lang.String FEATURE_PRINTING = "android.software.print";
    field public static final java.lang.String FEATURE_RAM_LOW = "android.hardware.ram.low";
    field public static final java.lang.String FEATURE_RAM_NORMAL = "android.hardware.ram.normal";
    field public static final java.lang.String FEATURE_SCREEN_LANDSCAPE = "android.hardware.screen.landscape";
    field public static final java.lang.String FEATURE_SCREEN_PORTRAIT = "android.hardware.screen.portrait";
    field public static final java.lang.String FEATURE_SECURELY_REMOVES_USERS = "android.software.securely_removes_users";
+2 −0
Original line number Diff line number Diff line
@@ -10778,6 +10778,8 @@ package android.content.pm {
    field public static final java.lang.String FEATURE_PC = "android.hardware.type.pc";
    field public static final java.lang.String FEATURE_PICTURE_IN_PICTURE = "android.software.picture_in_picture";
    field public static final java.lang.String FEATURE_PRINTING = "android.software.print";
    field public static final java.lang.String FEATURE_RAM_LOW = "android.hardware.ram.low";
    field public static final java.lang.String FEATURE_RAM_NORMAL = "android.hardware.ram.normal";
    field public static final java.lang.String FEATURE_SCREEN_LANDSCAPE = "android.hardware.screen.landscape";
    field public static final java.lang.String FEATURE_SCREEN_PORTRAIT = "android.hardware.screen.portrait";
    field public static final java.lang.String FEATURE_SECURELY_REMOVES_USERS = "android.software.securely_removes_users";
+19 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.annotation.UserIdInt;
import android.annotation.XmlRes;
import android.app.ActivityManager;
import android.app.PackageDeleteObserver;
import android.app.PackageInstallObserver;
import android.app.admin.DevicePolicyManager;
@@ -1788,6 +1789,24 @@ public abstract class PackageManager {
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_LOCATION_NETWORK = "android.hardware.location.network";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and
     * {@link #hasSystemFeature}: The device's
     * {@link ActivityManager#isLowRamDevice() ActivityManager.isLowRamDevice()} method returns
     * true.
     */
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_RAM_LOW = "android.hardware.ram.low";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and
     * {@link #hasSystemFeature}: The device's
     * {@link ActivityManager#isLowRamDevice() ActivityManager.isLowRamDevice()} method returns
     * false.
     */
    @SdkConstant(SdkConstantType.FEATURE)
    public static final String FEATURE_RAM_NORMAL = "android.hardware.ram.normal";

    /**
     * Feature for {@link #getSystemAvailableFeatures} and
     * {@link #hasSystemFeature}: The device can record audio via a
+6 −0
Original line number Diff line number Diff line
@@ -584,6 +584,12 @@ public class SystemConfig {
            addFeature(PackageManager.FEATURE_SECURELY_REMOVES_USERS, 0);
        }

        if (ActivityManager.isLowRamDeviceStatic()) {
            addFeature(PackageManager.FEATURE_RAM_LOW, 0);
        } else {
            addFeature(PackageManager.FEATURE_RAM_NORMAL, 0);
        }

        for (String featureName : mUnavailableFeatures) {
            removeFeature(featureName);
        }