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

Commit 71acf707 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Bump up OOM priority of bound VrListenerService." into oc-mr1-dev

parents 49b8850c 589c73db
Loading
Loading
Loading
Loading
+12 −5
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ public class ManagedApplicationService {
    private final int mClientLabel;
    private final String mSettingsAction;
    private final BinderChecker mChecker;
    private final boolean mIsImportant;

    private final DeathRecipient mDeathRecipient = new DeathRecipient() {
        @Override
@@ -64,13 +65,14 @@ public class ManagedApplicationService {

    private ManagedApplicationService(final Context context, final ComponentName component,
            final int userId, int clientLabel, String settingsAction,
            BinderChecker binderChecker) {
            BinderChecker binderChecker, boolean isImportant) {
        mContext = context;
        mComponent = component;
        mUserId = userId;
        mClientLabel = clientLabel;
        mSettingsAction = settingsAction;
        mChecker = binderChecker;
        mIsImportant = isImportant;
    }

    /**
@@ -99,13 +101,15 @@ public class ManagedApplicationService {
     * @param settingsAction an action that can be used to open the Settings UI to enable/disable
     *      binding to these services.
     * @param binderChecker an interface used to validate the returned binder object.
     * @param isImportant bind the user service with BIND_IMPORTANT.
     * @return a ManagedApplicationService instance.
     */
    public static ManagedApplicationService build(@NonNull final Context context,
        @NonNull final ComponentName component, final int userId, @NonNull int clientLabel,
        @NonNull String settingsAction, @NonNull BinderChecker binderChecker) {
        @NonNull String settingsAction, @NonNull BinderChecker binderChecker,
        boolean isImportant) {
        return new ManagedApplicationService(context, component, userId, clientLabel,
            settingsAction, binderChecker);
            settingsAction, binderChecker, isImportant);
    }

    /**
@@ -248,9 +252,12 @@ public class ManagedApplicationService {

            mPendingConnection = serviceConnection;

            int flags = Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE;
            if (mIsImportant) {
                flags |= Context.BIND_IMPORTANT;
            }
            try {
                if (!mContext.bindServiceAsUser(intent, serviceConnection,
                        Context.BIND_AUTO_CREATE | Context.BIND_FOREGROUND_SERVICE,
                if (!mContext.bindServiceAsUser(intent, serviceConnection, flags,
                        new UserHandle(mUserId))) {
                    Slog.w(TAG, "Unable to bind service: " + intent);
                }
+1 −1
Original line number Diff line number Diff line
@@ -1026,7 +1026,7 @@ public class VrManagerService extends SystemService implements EnabledComponentC
            @NonNull ComponentName component, int userId) {
        return ManagedApplicationService.build(context, component, userId,
                R.string.vr_listener_binding_label, Settings.ACTION_VR_LISTENER_SETTINGS,
                sBinderChecker);
                sBinderChecker, /*isImportant*/true);
    }

    /**