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

Commit 361020df authored by Jason Chiu's avatar Jason Chiu
Browse files

Allow the background activity start from legacy suggestion cards

There's a restriction on starting activities from PendingIntents. Opt-in
required when starting activities from PendingIntents. (https://goo.gle/android-bal#opt-in-required)

Bug: 346690654
Change-Id: I0525ebe5a49e7a7f5b07236e01cd3ababce1da4d
Test: manual
parent 2c4ceb38
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.settings.homepage.contextualcards.legacysuggestion;

import android.app.ActivityOptions;
import android.app.PendingIntent;
import android.content.ComponentName;
import android.content.Context;
@@ -79,7 +80,10 @@ public class LegacySuggestionContextualCardController implements ContextualCardC
    @Override
    public void onPrimaryClick(ContextualCard card) {
        try {
            ((LegacySuggestionContextualCard) card).getPendingIntent().send();
            ActivityOptions options = ActivityOptions.makeBasic()
                    .setPendingIntentBackgroundActivityStartMode(
                            ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED);
            ((LegacySuggestionContextualCard) card).getPendingIntent().send(options.toBundle());
        } catch (PendingIntent.CanceledException e) {
            Log.w(TAG, "Failed to start suggestion " + card.getTitleText());
        }