diff options
-rw-r--r-- | core/api/current.txt | 4 | ||||
-rw-r--r-- | core/java/android/os/Parcel.java | 17 |
2 files changed, 9 insertions, 12 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index 4a889fd5b681..a32a3a9207aa 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -30324,7 +30324,7 @@ package android.os { method @Deprecated public void readMap(@NonNull java.util.Map, @Nullable ClassLoader); method public <K, V> void readMap(@NonNull java.util.Map<? super K,? super V>, @Nullable ClassLoader, @NonNull Class<K>, @NonNull Class<V>); method @Deprecated @Nullable public <T extends android.os.Parcelable> T readParcelable(@Nullable ClassLoader); - method @Nullable public <T extends android.os.Parcelable> T readParcelable(@Nullable ClassLoader, @NonNull Class<? super T>); + method @Nullable public <T> T readParcelable(@Nullable ClassLoader, @NonNull Class<T>); method @Deprecated @Nullable public android.os.Parcelable[] readParcelableArray(@Nullable ClassLoader); method @Nullable public <T> T[] readParcelableArray(@Nullable ClassLoader, @NonNull Class<T>); method @Deprecated @Nullable public android.os.Parcelable.Creator<?> readParcelableCreator(@Nullable ClassLoader); @@ -30334,7 +30334,7 @@ package android.os { method @Nullable public android.os.PersistableBundle readPersistableBundle(); method @Nullable public android.os.PersistableBundle readPersistableBundle(@Nullable ClassLoader); method @Deprecated @Nullable public java.io.Serializable readSerializable(); - method @Nullable public <T extends java.io.Serializable> T readSerializable(@Nullable ClassLoader, @NonNull Class<? super T>); + method @Nullable public <T> T readSerializable(@Nullable ClassLoader, @NonNull Class<T>); method @NonNull public android.util.Size readSize(); method @NonNull public android.util.SizeF readSizeF(); method @Deprecated @Nullable public <T> android.util.SparseArray<T> readSparseArray(@Nullable ClassLoader); diff --git a/core/java/android/os/Parcel.java b/core/java/android/os/Parcel.java index ffaff9533c8c..09eac79c991e 100644 --- a/core/java/android/os/Parcel.java +++ b/core/java/android/os/Parcel.java @@ -3704,10 +3704,10 @@ public final class Parcel { final int m = list.size(); int i = 0; for (; i < m && i < n; i++) { - list.set(i, readParcelableInternal(cl, clazz)); + list.set(i, (T) readParcelableInternal(cl, clazz)); } for (; i < n; i++) { - list.add(readParcelableInternal(cl, clazz)); + list.add((T) readParcelableInternal(cl, clazz)); } for (; i < m; i++) { list.remove(n); @@ -4210,8 +4210,7 @@ public final class Parcel { * trying to instantiate an element. */ @Nullable - public <T extends Parcelable> T readParcelable(@Nullable ClassLoader loader, - @NonNull Class<? super T> clazz) { + public <T> T readParcelable(@Nullable ClassLoader loader, @NonNull Class<T> clazz) { Objects.requireNonNull(clazz); return readParcelableInternal(loader, clazz); } @@ -4221,8 +4220,7 @@ public final class Parcel { */ @SuppressWarnings("unchecked") @Nullable - private <T extends Parcelable> T readParcelableInternal(@Nullable ClassLoader loader, - @Nullable Class<? super T> clazz) { + private <T> T readParcelableInternal(@Nullable ClassLoader loader, @Nullable Class<T> clazz) { Parcelable.Creator<?> creator = readParcelableCreatorInternal(loader, clazz); if (creator == null) { return null; @@ -4458,8 +4456,7 @@ public final class Parcel { * deserializing the object. */ @Nullable - public <T extends Serializable> T readSerializable(@Nullable ClassLoader loader, - @NonNull Class<? super T> clazz) { + public <T> T readSerializable(@Nullable ClassLoader loader, @NonNull Class<T> clazz) { Objects.requireNonNull(clazz); return readSerializableInternal( loader == null ? getClass().getClassLoader() : loader, clazz); @@ -4469,8 +4466,8 @@ public final class Parcel { * @param clazz The type of the serializable expected or {@code null} for performing no checks */ @Nullable - private <T extends Serializable> T readSerializableInternal(@Nullable final ClassLoader loader, - @Nullable Class<? super T> clazz) { + private <T> T readSerializableInternal(@Nullable final ClassLoader loader, + @Nullable Class<T> clazz) { String name = readString(); if (name == null) { // For some reason we were unable to read the name of the Serializable (either there |