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

Commit 2100ea6b authored by Bishoy Gendy's avatar Bishoy Gendy Committed by Android (Google) Code Review
Browse files

Merge "Ignore setForegroundAllowance calls in case of MediaSession2" into main

parents 26f7a914 dfc99e59
Loading
Loading
Loading
Loading
+4 −21
Original line number Diff line number Diff line
@@ -56,7 +56,6 @@ public class MediaSession2Record extends MediaSessionRecordImpl {
    private boolean mIsClosed;

    private final int mPid;
    private final ForegroundServiceDelegationOptions mForegroundServiceDelegationOptions;

    public MediaSession2Record(
            Session2Token sessionToken,
@@ -76,25 +75,6 @@ public class MediaSession2Record extends MediaSessionRecordImpl {
                    .build();
            mPid = pid;
            mPolicies = policies;
            mForegroundServiceDelegationOptions =
                    new ForegroundServiceDelegationOptions.Builder()
                            .setClientPid(mPid)
                            .setClientUid(getUid())
                            .setClientPackageName(getPackageName())
                            .setClientAppThread(null)
                            .setSticky(false)
                            .setClientInstanceName(
                                    "MediaSessionFgsDelegate_"
                                            + getUid()
                                            + "_"
                                            + mPid
                                            + "_"
                                            + getPackageName())
                            .setForegroundServiceTypes(0)
                            .setDelegationService(
                                    ForegroundServiceDelegationOptions
                                            .DELEGATION_SERVICE_MEDIA_PLAYBACK)
                            .build();
        }
    }

@@ -119,7 +99,10 @@ public class MediaSession2Record extends MediaSessionRecordImpl {

    @Override
    public ForegroundServiceDelegationOptions getForegroundServiceDelegationOptions() {
        return mForegroundServiceDelegationOptions;
        // For an app to be eligible for FGS delegation, it needs a media session liked to a media
        // notification. Currently, notifications cannot be linked to MediaSession2 so it is not
        // supported.
        return null;
    }

    @Override
+1 −3
Original line number Diff line number Diff line
@@ -626,9 +626,7 @@ public class MediaSessionService extends SystemService implements Monitor {
        }
        ForegroundServiceDelegationOptions foregroundServiceDelegationOptions =
                record.getForegroundServiceDelegationOptions();
        if (foregroundServiceDelegationOptions == null
                || foregroundServiceDelegationOptions.mClientPid == Process.INVALID_PID) {
            // This record doesn't support FGS delegation. In practice, this is MediaSession2.
        if (foregroundServiceDelegationOptions == null) {
            return;
        }
        if (allowRunningInForeground) {