From c861533254d98870599ea83016a9eed9f76ad567 Mon Sep 17 00:00:00 2001 From: Steven Moreland Date: Fri, 3 Sep 2021 11:45:22 -0700 Subject: [PATCH] Parcel: obtain(IBinder) as API There are two main usecases for this: - provide an alternative route to implement features like markSensitive (which requires only 1 function call per class, rather than a function call and flag per transaction type) - support RPC format transactions Bug: 175814583 Test: atest android.os.ParcelTest, boot, manual Change-Id: Ibaacc27a125a31e18d4b5889d05d12cc18d05624 --- core/api/current.txt | 1 + core/java/android/os/Parcel.java | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/core/api/current.txt b/core/api/current.txt index 93ef8f82093c..5c072541f974 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -29976,6 +29976,7 @@ package android.os { method public boolean hasFileDescriptors(); method public byte[] marshall(); method @NonNull public static android.os.Parcel obtain(); + method @NonNull public static android.os.Parcel obtain(@NonNull android.os.IBinder); method @Nullable public Object[] readArray(@Nullable ClassLoader); method @Nullable public java.util.ArrayList readArrayList(@Nullable ClassLoader); method public void readBinderArray(@NonNull android.os.IBinder[]); diff --git a/core/java/android/os/Parcel.java b/core/java/android/os/Parcel.java index 9af8e6ff3451..f410a250408e 100644 --- a/core/java/android/os/Parcel.java +++ b/core/java/android/os/Parcel.java @@ -454,8 +454,6 @@ public final class Parcel { * transaction on this specific binder object. Based on this, the format of the wire binder * protocol may change. For future compatibility, it is recommended to use this for all * Parcels. - * - * @hide */ @NonNull public static Parcel obtain(@NonNull IBinder binder) {