diff options
7 files changed, 11 insertions, 34 deletions
diff --git a/core/api/module-lib-current.txt b/core/api/module-lib-current.txt index 3241f2d9fb7c..8dceb8f1d852 100644 --- a/core/api/module-lib-current.txt +++ b/core/api/module-lib-current.txt @@ -20,10 +20,6 @@ package android.app { method @RequiresPermission(android.Manifest.permission.CHANGE_CONFIGURATION) public boolean updateMccMncConfiguration(@NonNull String, @NonNull String); } - public class ActivityOptions { - method @NonNull public static android.app.ActivityOptions fromBundle(@NonNull android.os.Bundle); - } - public class AppOpsManager { field public static final String OPSTR_NO_ISOLATED_STORAGE = "android:no_isolated_storage"; } diff --git a/core/api/test-current.txt b/core/api/test-current.txt index eb56e40770dd..0577b0205b19 100644 --- a/core/api/test-current.txt +++ b/core/api/test-current.txt @@ -154,7 +154,6 @@ package android.app { } public class ActivityOptions { - method @NonNull public static android.app.ActivityOptions fromBundle(@NonNull android.os.Bundle); method public boolean isEligibleForLegacyPermissionPrompt(); method @NonNull public static android.app.ActivityOptions makeCustomAnimation(@NonNull android.content.Context, int, int, int, @Nullable android.os.Handler, @Nullable android.app.ActivityOptions.OnAnimationStartedListener, @Nullable android.app.ActivityOptions.OnAnimationFinishedListener); method @NonNull @RequiresPermission(android.Manifest.permission.START_TASKS_FROM_RECENTS) public static android.app.ActivityOptions makeCustomTaskAnimation(@NonNull android.content.Context, int, int, @Nullable android.os.Handler, @Nullable android.app.ActivityOptions.OnAnimationStartedListener, @Nullable android.app.ActivityOptions.OnAnimationFinishedListener); diff --git a/core/java/android/app/ActivityOptions.java b/core/java/android/app/ActivityOptions.java index 87ac6cb1fe4c..0178fa143445 100644 --- a/core/java/android/app/ActivityOptions.java +++ b/core/java/android/app/ActivityOptions.java @@ -1421,17 +1421,9 @@ public class ActivityOptions extends ComponentOptions { return mRemoteTransition; } - /** - * Creates an ActivityOptions from the Bundle generated from {@link ActivityOptions#toBundle()}. - * Returns an instance of ActivityOptions populated with options with known keys from the - * provided Bundle, stripping out unknown entries. - * @hide - */ - @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) - @TestApi - @NonNull - public static ActivityOptions fromBundle(@NonNull Bundle bOptions) { - return new ActivityOptions(bOptions); + /** @hide */ + public static ActivityOptions fromBundle(Bundle bOptions) { + return bOptions != null ? new ActivityOptions(bOptions) : null; } /** @hide */ diff --git a/core/java/android/app/servertransaction/LaunchActivityItem.java b/core/java/android/app/servertransaction/LaunchActivityItem.java index abf1058f45a2..d7e09519bfb7 100644 --- a/core/java/android/app/servertransaction/LaunchActivityItem.java +++ b/core/java/android/app/servertransaction/LaunchActivityItem.java @@ -179,7 +179,7 @@ public class LaunchActivityItem extends ClientTransactionItem { in.readPersistableBundle(getClass().getClassLoader()), in.createTypedArrayList(ResultInfo.CREATOR), in.createTypedArrayList(ReferrerIntent.CREATOR), - readActivityOptions(in), in.readBoolean(), + ActivityOptions.fromBundle(in.readBundle()), in.readBoolean(), in.readTypedObject(ProfilerInfo.CREATOR), in.readStrongBinder(), IActivityClientController.Stub.asInterface(in.readStrongBinder()), @@ -187,11 +187,6 @@ public class LaunchActivityItem extends ClientTransactionItem { in.readBoolean()); } - private static ActivityOptions readActivityOptions(Parcel in) { - Bundle bundle = in.readBundle(); - return bundle != null ? ActivityOptions.fromBundle(bundle) : null; - } - public static final @NonNull Creator<LaunchActivityItem> CREATOR = new Creator<LaunchActivityItem>() { public LaunchActivityItem createFromParcel(Parcel in) { diff --git a/core/java/android/app/servertransaction/StartActivityItem.java b/core/java/android/app/servertransaction/StartActivityItem.java index f267060d1be6..15f65f6d9d26 100644 --- a/core/java/android/app/servertransaction/StartActivityItem.java +++ b/core/java/android/app/servertransaction/StartActivityItem.java @@ -23,7 +23,6 @@ import android.annotation.Nullable; import android.app.ActivityOptions; import android.app.ActivityThread.ActivityClientRecord; import android.app.ClientTransactionHandler; -import android.os.Bundle; import android.os.Parcel; import android.os.Trace; @@ -84,8 +83,7 @@ public class StartActivityItem extends ActivityLifecycleItem { /** Read from Parcel. */ private StartActivityItem(Parcel in) { - Bundle bundle = in.readBundle(); - mActivityOptions = bundle != null ? ActivityOptions.fromBundle(bundle) : null; + mActivityOptions = ActivityOptions.fromBundle(in.readBundle()); } public static final @NonNull Creator<StartActivityItem> CREATOR = diff --git a/services/core/java/com/android/server/am/PendingIntentRecord.java b/services/core/java/com/android/server/am/PendingIntentRecord.java index b1c91ba4a79d..81a8680cdbf0 100644 --- a/services/core/java/com/android/server/am/PendingIntentRecord.java +++ b/services/core/java/com/android/server/am/PendingIntentRecord.java @@ -368,8 +368,7 @@ public final class PendingIntentRecord extends IIntentSender.Stub { // Apply any launch flags from the ActivityOptions. This is to ensure that the caller // can specify a consistent launch mode even if the PendingIntent is immutable - final ActivityOptions opts = options != null ? ActivityOptions.fromBundle(options) - : null; + final ActivityOptions opts = ActivityOptions.fromBundle(options); if (opts != null) { finalIntent.addFlags(opts.getPendingIntentLaunchFlags()); } diff --git a/services/core/java/com/android/server/pm/LauncherAppsService.java b/services/core/java/com/android/server/pm/LauncherAppsService.java index 6b3ce773fb63..e9896617d8e8 100644 --- a/services/core/java/com/android/server/pm/LauncherAppsService.java +++ b/services/core/java/com/android/server/pm/LauncherAppsService.java @@ -1109,13 +1109,11 @@ public class LauncherAppsService extends SystemService { // Note the target activity doesn't have to be exported. // Flag for bubble - if (startActivityOptions != null) { - ActivityOptions options = ActivityOptions.fromBundle(startActivityOptions); - if (options.isApplyActivityFlagsForBubbles()) { - // Flag for bubble to make behaviour match documentLaunchMode=always. - intents[0].addFlags(FLAG_ACTIVITY_NEW_DOCUMENT); - intents[0].addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); - } + ActivityOptions options = ActivityOptions.fromBundle(startActivityOptions); + if (options != null && options.isApplyActivityFlagsForBubbles()) { + // Flag for bubble to make behaviour match documentLaunchMode=always. + intents[0].addFlags(FLAG_ACTIVITY_NEW_DOCUMENT); + intents[0].addFlags(FLAG_ACTIVITY_MULTIPLE_TASK); } intents[0].addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); |