Status Update
Comments
ju...@google.com <ju...@google.com> #2
ju...@google.com <ju...@google.com> #3
This issie initially appeared on a Samsung Galaxy Ace with 2.3.3, but after testing it in an Android emulator, it also appeared. The dificulty to reproduce this is because it only seems to happen after a crash of the app (either by OOM or some other bug), and we Android tries to recreate the app, it crashes again with the "ClassNotFoundException when unmarshalling".
Also, we're having another crash similar to this, but in AppBarLayout.Behaviour:
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1658)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1674)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3735)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:662)
at dalvik.system.NativeStart.main(NativeStart.java)
Caused by android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readParcelableArray(Parcel.java:1997)
at android.support.design.widget.CoordinatorLayout$SavedState.<init>(CoordinatorLayout.java:2604)
at android.support.design.widget.CoordinatorLayout$SavedState$1.createFromParcel(CoordinatorLayout.java:2639)
at android.support.design.widget.CoordinatorLayout$SavedState$1.createFromParcel(CoordinatorLayout.java:2636)
at android.support.v4.os.ParcelableCompat$CompatCreator.createFromParcel(ParcelableCompat.java:51)
at android.os.Parcel.readParcelable(Parcel.java:1981)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1175)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1517)
at android.app.Activity.onRestoreInstanceState(Activity.java:844)
at android.app.Activity.performRestoreInstanceState(Activity.java:816)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1636)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1674)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3735)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:662)
at dalvik.system.NativeStart.main(NativeStart.java)
Thanks in advance.
ju...@google.com <ju...@google.com> #4
ap...@google.com <ap...@google.com> #5
ap...@google.com <ap...@google.com> #6
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.rusdelphi.wifipassword/com.rusdelphi.wifipassword.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1735)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1754)
at android.app.ActivityThread.access$1500(ActivityThread.java:156)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1000)
at android.os.Handler.dispatchMessage(Handler.java:130)
at android.os.Looper.loop(SourceFile:351)
at android.app.ActivityThread.main(ActivityThread.java:3821)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:538)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:969)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:727)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1989)
at android.os.Parcel.readParcelableArray(Parcel.java:2028)
at android.support.design.widget.CoordinatorLayout$SavedState.<init>(Unknown Source)
at android.support.design.widget.CoordinatorLayout$SavedState$1.createFromParcel(Unknown Source)
at android.support.design.widget.CoordinatorLayout$SavedState$1.createFromParcel(Unknown Source)
at android.support.v4.e.d.createFromParcel(Unknown Source)
at android.os.Parcel.readParcelable(Parcel.java:2012)
at android.os.Parcel.readValue(Parcel.java:1877)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2143)
at android.os.Parcel.readSparseArray(Parcel.java:1599)
at android.os.Parcel.readValue(Parcel.java:1934)
at android.os.Parcel.readMapInternal(Parcel.java:2114)
at android.os.Bundle.unparcel(Bundle.java:239)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1198)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1538)
at android.app.Activity.onRestoreInstanceState(Activity.java:880)
at android.app.Activity.performRestoreInstanceState(Activity.java:852)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1132)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1713)
... 11 more
ap...@google.com <ap...@google.com> #7
<android.support.v4.widget.DrawerLayout xmlns:android="
xmlns:app="
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<RelativeLayout
android:id="@+id/MainView"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark" />
<LinearLayout
android:id="@+id/ad_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center|bottom"
android:orientation="vertical" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark"
app:tabGravity="fill" />
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</LinearLayout>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_margin="@dimen/fab_margin"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:onClick="onAddButtonClick"
android:src="@drawable/ic_add_black_24dp"
android:visibility="invisible"
app:layout_behavior="com.rusdelphi.wifipassword.FABScrollBehavior" />
</RelativeLayout>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:menu="@menu/drawer_view" />
</android.support.v4.widget.DrawerLayout>
ap...@google.com <ap...@google.com> #8
ap...@google.com <ap...@google.com> #9
Another stacktrace, in case it could bring some more info:
java.lang.RuntimeException: Unable to start activity ComponentInfo{org.videolan.vlc/org.videolan.vlc.gui.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1696)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1716)
at android.app.ActivityThread.access$1500(ActivityThread.java:124)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:968)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3806)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
at Android.MODEL(MB855)
at Android.VERSION(2.3.5)
at Android.FINGERPRINT(sprint/moto_sunfire/sunfire:2.3.5/4.5.1A-1_SUN-254_13/CM:user/release-keys)
Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1167)
at android.support.design.internal.NavigationMenuPresenter.onRestoreInstanceState(NavigationMenuPresenter.java:175)
at android.support.v7.view.menu.MenuBuilder.dispatchRestoreInstanceState(MenuBuilder.java:349)
at android.support.v7.view.menu.MenuBuilder.restorePresenterStates(MenuBuilder.java:361)
at android.support.design.widget.NavigationView.onRestoreInstanceState(NavigationView.java:191)
at android.view.View.dispatchRestoreInstanceState(View.java:6278)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1211)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.View.restoreHierarchyState(View.java:6257)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1724)
at android.app.Activity.onRestoreInstanceState(Activity.java:868)
at android.app.Activity.performRestoreInstanceState(Activity.java:840)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1674)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1716)
at android.app.ActivityThread.access$1500(ActivityThread.java:124)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:968)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3806)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
ap...@google.com <ap...@google.com> #10
jl...@google.com <jl...@google.com> #11
Are you aware of any work arounds for this issue?
We considered explicitly setting the class loader during the saving of the state in hopes that might fix it. But, we're not sure of any additional ramifications that might have on saving state.
And, it's not specific to just Android 2, though, this is mostly the case.
97% Android 2
1% Android 4
1% Android 3
1% Other
Any advice would be greatly appreciated.
ju...@google.com <ju...@google.com> #12
The SavedState was not public on an earlier version of the library which could cause this issue but it is already fixed now (+ 23.1.1 should have it public).
Another thing to check might be the proguard setup to ensure that the SavedState class is not being stripped.
jl...@google.com <jl...@google.com> #13
-keep class android.support.design.widget.AppBarLayout$Behavior$SavedState { *; }
-keep class android.support.design.widget.CoordinatorLayout$SavedState { *; }
When looking through the mapping files, SavedState seems to be preserved. But, I could be misreading it.
jl...@google.com <jl...@google.com> #14
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sirma.mobile.bible.android/com.youversion.ui.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1829)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1848)
at android.app.ActivityThread.access$1500(ActivityThread.java:177)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1041)
at android.os.Handler.dispatchMessage(Handler.java:130)
at android.os.Looper.loop(Looper.java:384)
at android.app.ActivityThread.main(ActivityThread.java:3975)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:538)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:978)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:732)
at dalvik.system.NativeStart.main(NativeStart.java)
Caused by android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1989)
at android.os.Parcel.readParcelableArray(Parcel.java:2028)
at android.support.design.widget.CoordinatorLayout$SavedState.<init>(CoordinatorLayout.java:2604)
at android.support.design.widget.CoordinatorLayout$SavedState$1.a(CoordinatorLayout.java:2639)
at android.support.design.widget.CoordinatorLayout$SavedState$1.b(CoordinatorLayout.java:2636)
at android.support.v4.os.j.createFromParcel(ParcelableCompat.java:51)
at android.os.Parcel.readParcelable(Parcel.java:2012)
at android.os.Parcel.readValue(Parcel.java:1877)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2143)
at android.os.Parcel.readSparseArray(Parcel.java:1599)
at android.os.Parcel.readValue(Parcel.java:1934)
at android.os.Parcel.readMapInternal(Parcel.java:2114)
at android.os.Bundle.unparcel(Bundle.java:239)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1198)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1544)
at android.app.Activity.onRestoreInstanceState(Activity.java:880)
at com.youversion.ui.MainActivity.onRestoreInstanceState(MainActivity.java:302)
at android.app.Activity.performRestoreInstanceState(Activity.java:852)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1199)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1807)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1848)
at android.app.ActivityThread.access$1500(ActivityThread.java:177)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1041)
at android.os.Handler.dispatchMessage(Handler.java:130)
at android.os.Looper.loop(Looper.java:384)
at android.app.ActivityThread.main(ActivityThread.java:3975)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:538)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:978)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:732)
at dalvik.system.NativeStart.main(NativeStart.java)
ju...@google.com <ju...@google.com> #15
public class FixedNavigationView extends NavigationView {
public FixedNavigationView(Context context) {
super(context);
}
public FixedNavigationView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public FixedNavigationView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
final protected void onRestoreInstanceState(Parcelable savedState) {
if (savedState != null) {
SavedState state = (SavedState) savedState;
if (state.menuState != null)
state.menuState.setClassLoader(getContext().getClass().getClassLoader());
}
super.onRestoreInstanceState(savedState);
}
}
jl...@google.com <jl...@google.com> #16
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
ap...@google.com <ap...@google.com> #17
ap...@google.com <ap...@google.com> #18
ap...@google.com <ap...@google.com> #19
And, where are having this issue not only on Adnroid 2, but also on 3, 4 and even Lolipop!
ap...@google.com <ap...@google.com> #20
FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.fabiano.ifprof/com.example.fabiano.ifprof.ShowFaltas}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1167)
at android.support.design.internal.NavigationMenuPresenter.onRestoreInstanceState(NavigationMenuPresenter.java:175)
at android.support.v7.view.menu.MenuBuilder.dispatchRestoreInstanceState(MenuBuilder.java:349)
at android.support.v7.view.menu.MenuBuilder.restorePresenterStates(MenuBuilder.java:361)
at android.support.design.widget.NavigationView.onRestoreInstanceState(NavigationView.java:191)
at android.view.View.dispatchRestoreInstanceState(View.java:6278)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1211)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.View.restoreHierarchyState(View.java:6257)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1606)
at android.app.Activity.onRestoreInstanceState(Activity.java:847)
at android.app.Activity.performRestoreInstanceState(Activity.java:819)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1629)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(Native Method)
ap...@google.com <ap...@google.com> #21
Stacktrace:
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.oscarsalguero.myapp/com.oscarsalguero.myapp.view.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1167)
at android.support.design.internal.NavigationMenuPresenter.onRestoreInstanceState(NavigationMenuPresenter.java:175)
at android.support.v7.view.menu.MenuBuilder.dispatchRestoreInstanceState(MenuBuilder.java:349)
at android.support.v7.view.menu.MenuBuilder.restorePresenterStates(MenuBuilder.java:361)
at android.support.design.widget.NavigationView.onRestoreInstanceState(NavigationView.java:191)
at android.view.View.dispatchRestoreInstanceState(View.java:6336)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1211)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.View.restoreHierarchyState(View.java:6315)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1528)
at android.app.Activity.onRestoreInstanceState(Activity.java:844)
at com.oscarsalguero.myapp.view.MainActivity.onRestoreInstanceState(MainActivity.java:350)
at android.app.Activity.performRestoreInstanceState(Activity.java:816)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1629)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
at dalvik.system.NativeStart.main(Native Method)
[ 01-10 23:09:59.304 32107:0x7d81 E/ ]
Dumpstate > /data/log/dumpstate_app_error
It does not happen on a Nexus 5X running Marshmallow 6.0.1.
It does not happen on a Nexus 5 running KitKat 4.4.4.
The exception happens on a Samsung Galaxy S running Android OS 2.3.6 (Gingerbread).
It happens when coming back to the app from other app and it is kinda random, sometimes it crashes, sometimes it does not.
so...@gmail.com <so...@gmail.com> #22
ap...@google.com <ap...@google.com> #23
Stack trace:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ovm.ovmapp/com.ovm.ovmapp.ovm.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1167)
at android.support.design.internal.NavigationMenuPresenter.onRestoreInstanceState(NavigationMenuPresenter.java:175)
at android.support.v7.view.menu.MenuBuilder.dispatchRestoreInstanceState(MenuBuilder.java:349)
at android.support.v7.view.menu.MenuBuilder.restorePresenterStates(MenuBuilder.java:361)
at android.support.design.widget.NavigationView.onRestoreInstanceState(NavigationView.java:191)
at android.view.View.dispatchRestoreInstanceState(View.java:6331)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1211)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.View.restoreHierarchyState(View.java:6310)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1532)
at android.app.Activity.onRestoreInstanceState(Activity.java:844)
at android.app.Activity.performRestoreInstanceState(Activity.java:816)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1629)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(Native Method)
I have a setup like this:
MainActivity -> SecondActivity -> ThirdActivity
I am able to reproduce the issue by forcing ThirdActivity to crash, which lands me back on SecondActivity, and then navigate back to MainActivity.
MainActivity has a NavigationView which seems to be the source.
I was able to reproduce this on android 2.3.3, but not on 4.3.
ap...@google.com <ap...@google.com> #24
I have been getting this annoying crash for quite some time now. This is the #1 crash in my production apk. I even posted a question on stackoverflow:
but, unfortunately do not have an answer yet. This is the foremost and only crash in my analytics and google developer console.
ap...@google.com <ap...@google.com> #25
ap...@google.com <ap...@google.com> #26
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate health to use JSpecify annotations
Expand for full commit details
Migrate health to use JSpecify annotations
CL created by running `development/jspecify_update.py health`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: Iaf73a787b8b07034e55d1ec8e3495728849dc127
Files:
- M
health/connect/connect-client/build.gradle
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/ipc/Client.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/ipc/internal/BaseQueueOperation.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/ipc/internal/ConnectionManager.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/ipc/internal/ListenerKey.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/ipc/internal/ServiceConnection.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/permission/token/PermissionTokenManager.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/sdkservice/HealthDataSdkService.java
- M
health/connect/connect-client/src/main/java/androidx/health/platform/client/impl/sdkservice/HealthDataSdkServiceStubImpl.java
- M
health/connect/connect-client/src/test/java/androidx/health/platform/client/impl/ipc/internal/ConnectionManagerTest.java
- M
health/connect/connect-client/src/test/java/androidx/health/platform/client/impl/ipc/internal/ServiceConnectionTest.java
- M
health/health-services-client/build.gradle
- M
health/health-services-client/src/main/java/androidx/health/services/client/impl/ipc/Client.java
- M
health/health-services-client/src/main/java/androidx/health/services/client/impl/ipc/internal/ListenerKey.java
- M
health/health-services-client/src/main/java/androidx/health/services/client/impl/ipc/internal/ServiceConnection.java
Hash: 6ed5b189b8f195037dff86a491cb5c37779b9ddf
Date: Wed Oct 09 14:13:27 2024
ap...@google.com <ap...@google.com> #27
ap...@google.com <ap...@google.com> #28
ap...@google.com <ap...@google.com> #29
ap...@google.com <ap...@google.com> #30
I can reproduce it in a 2.3.6 device after a crash, similar to
ap...@google.com <ap...@google.com> #31
ap...@google.com <ap...@google.com> #32
ap...@google.com <ap...@google.com> #33
ap...@google.com <ap...@google.com> #34
Here is my Logcat:
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(NativeStart.java)
Caused by android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readParcelableArray(Parcel.java:1997)
at android.support.design.widget.CoordinatorLayout$SavedState.(CoordinatorLayout.java:2604)
at android.support.design.widget.CoordinatorLayout$SavedState$1.createFromParcel(CoordinatorLayout.java:4639)
at android.support.v4.os.ParcelableCompat$CompatCreator.createFromParcel(ParcelableCompat.java:51)
at android.os.Parcel.readParcelable(Parcel.java:1981)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1167)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1605)
at android.app.Activity.onRestoreInstanceState(Activity.java:847)
at android.app.Activity.performRestoreInstanceState(Activity.java:819)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1629)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(NativeStart.java)
ap...@google.com <ap...@google.com> #35
RecyclerView has great animations, but other than that has been a continuing source of trouble.
ap...@google.com <ap...@google.com> #36
Ultimately the crash is caused by this code in AbsSavedState, below the "FIXME" where it uses null for classLoader:
protected AbsSavedState(Parcel source) {
// FIXME need class loader
Parcelable superState = source.readParcelable(null);
mSuperState = superState != null ? superState : EMPTY_STATE;
}
The "FIXME" has been there for at least 6 years, maybe 8 years:
What do you Google guys and gals think?
Is 6 years enough time to get that FIXME actually FIXED?
ap...@google.com <ap...@google.com> #37
ap...@google.com <ap...@google.com> #38
Caused by android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelable(Parcel.java:1958)
at android.os.Parcel.readValue(Parcel.java:1846)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2112)
at android.os.Parcel.readSparseArray(Parcel.java:1568)
at android.os.Parcel.readValue(Parcel.java:1903)
at android.os.Parcel.readMapInternal(Parcel.java:2083)
at android.os.Bundle.unparcel(Bundle.java:208)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1167)
at android.support.design.internal.NavigationMenuPresenter.onRestoreInstanceState(NavigationMenuPresenter.java:174)
at android.support.v7.view.menu.MenuBuilder.dispatchRestoreInstanceState(MenuBuilder.java:349)
at android.support.v7.view.menu.MenuBuilder.restorePresenterStates(MenuBuilder.java:361)
at android.support.design.widget.NavigationView.onRestoreInstanceState(NavigationView.java:192)
at android.view.View.dispatchRestoreInstanceState(View.java:6278)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1211)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)
at android.view.View.restoreHierarchyState(View.java:6257)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1587)
at android.app.Activity.onRestoreInstanceState(Activity.java:844)
at android.app.Activity.performRestoreInstanceState(Activity.java:816)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1629)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3687)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
at dalvik.system.NativeStart.main(NativeStart.java)
ap...@google.com <ap...@google.com> #39
ap...@google.com <ap...@google.com> #40
ap...@google.com <ap...@google.com> #41
Gingerbread + Froyo are just 2.7% of the Android out there (
ap...@google.com <ap...@google.com> #42
FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo{...}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
After some experiments I found that error causes only when I try to interact with the visual elements within the main thread MainActivity
I fixed my error by placing the action with the interface in a separate thread
Simple example of code with this error:
public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView infobox = (TextView) findViewById(R.id.infobox);
infobox.setText("some text");
}
}
And after creating new thread - works perfectly:
public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Handler handler = new Handler() {
@Override
public void handleMessage(Message message) {
TextView infobox = (TextView) findViewById(R.id.infobox);
infobox.setText(message.obj);
}
};
final Thread thread = new Thread() {
@Override
public void run() {
final Message message = handler.obtainMessage(1, loadedData);
handler.sendMessage(message);
}
};
thread.setPriority(3);
thread.start();
}
}
I know that this is not the best solution, and it may not work for you, but maybe help someone else to understand a problem
ap...@google.com <ap...@google.com> #43
ap...@google.com <ap...@google.com> #44
ap...@google.com <ap...@google.com> #45
ap...@google.com <ap...@google.com> #46
ap...@google.com <ap...@google.com> #47
Can't wait to try 24.0
ap...@google.com <ap...@google.com> #48
ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
And I don't use RecyclerView in the project at the moment, only have a dependency on it.
Project is multi-dex, so maybe that is the issue.
But why does my MapView receive savedInstanceState that has anything about RecyclerView inside?
ap...@google.com <ap...@google.com> #49
try {
mapView.onCreate(savedInstancestate)
} catch (t: Throwable) {
t.printStackTrace()
}
No more crash, but looks like map doesn't fully restore in some cases
ap...@google.com <ap...@google.com> #50
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate mediarouter to use JSpecify annotations
Expand for full commit details
Migrate mediarouter to use JSpecify annotations
CL created by running `development/jspecify_update.py mediarouter`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: Icdc78c14fda950b63d783d824704e20bb834b9f5
Files:
- M
mediarouter/mediarouter/build.gradle
- M
mediarouter/mediarouter/src/androidTest/java/androidx/mediarouter/media/MediaRouteProviderTest.java
- M
mediarouter/mediarouter/src/androidTest/java/androidx/mediarouter/media/MediaRouter2Test.java
- M
mediarouter/mediarouter/src/androidTest/java/androidx/mediarouter/media/MediaRouterDynamicProviderTest.java
- M
mediarouter/mediarouter/src/androidTest/java/androidx/mediarouter/media/StubDynamicMediaRouteProviderService.java
- M
mediarouter/mediarouter/src/androidTest/java/androidx/mediarouter/media/StubMediaRouteProviderService.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/DeviceUtils.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteActionProvider.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteButton.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteChooserDialog.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteChooserDialogFragment.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteControllerDialog.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteControllerDialogFragment.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteDialogFactory.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteDiscoveryFragment.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteDynamicChooserDialog.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/MediaRouteDynamicControllerDialog.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/OverlayListView.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/app/SystemOutputSwitcherDialogController.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/GlobalMediaRouter.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaItemStatus.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRoute2Provider.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRoute2ProviderServiceAdapter.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouteDescriptor.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouteDiscoveryRequest.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouteProvider.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouteProviderDescriptor.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouteProviderService.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouteSelector.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouter.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouter2Utils.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouterParams.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaRouterUtils.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaSessionStatus.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/MediaTransferReceiver.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/PlatformMediaRouter1RouteProvider.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RegisteredMediaRouteProvider.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RegisteredMediaRouteProviderWatcher.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RemoteControlClientCompat.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RemotePlaybackClient.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/RouteListingPreference.java
- M
mediarouter/mediarouter/src/main/java/androidx/mediarouter/media/SystemRoutingUsingMediaRouter2Receiver.java
- M
mediarouter/mediarouter/src/test/java/androidx/mediarouter/app/SystemOutputSwitcherDialogControllerTest.java
Hash: 7a98699756b558b1a45c67835ba9a75dac2ace0f
Date: Wed Nov 20 15:54:08 2024
ap...@google.com <ap...@google.com> #51
View.BaseSavedState currently does not handle ClassLoaders correctly. It works fine for framework views, but not so well for Views which can come from other loaders (i.e. support lib or custom views) which is why multi-dex triggers this. The platform bug is fixed in N.
We also have a fix for the support library components in 24.0.0. They now use a new support library version of AbsSavedState which handles loaders correctly.
It's up to each View to migrate to fix the issue pre-N though.
ap...@google.com <ap...@google.com> #52
Will you write a blog post about this issue with more details and how to do that migration for custom views? Or is it just as simple as changing the import to support.vX's AbsSavedState?
ap...@google.com <ap...@google.com> #53
ap...@google.com <ap...@google.com> #54
ap...@google.com <ap...@google.com> #55
ap...@google.com <ap...@google.com> #56
ap...@google.com <ap...@google.com> #57
testing device is api 10.
ap...@google.com <ap...@google.com> #58
ap...@google.com <ap...@google.com> #59
ap...@google.com <ap...@google.com> #60
ap...@google.com <ap...@google.com> #61
ap...@google.com <ap...@google.com> #62
Steps to reproduce:
Open nav-bar and select Finish. The app will open the device's Camera app. Take a picture, which will save to sd card. The app will display. After a few secs, a delayed thread in onActivityResult will run, causing this error.
ap...@google.com <ap...@google.com> #63
My test device:
Samsung Galaxy S6 running Android 6.0.1
Important device environment setup!
- Enable "Do not keep activies" on the Developer options.
TIP:
Press the top back icon after setting that option enabled. If you just press the HOME button the state of the setting will NOT be saved! BUG there...
Reproducing the BadParcelableException bug:
1. Get the sample project running. [
2. Open the sample app.
3. Press the HOME button.
4. Press the sample app icon to open the app.
5. CRASHHHHHH...
LOG:
"Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.LinearLayoutManager$SavedState"
HOPE THIS HELPS!
ap...@google.com <ap...@google.com> #64
ap...@google.com <ap...@google.com> #65
For some reason I thought the Parcelable class would properly find the correct loader.
ap...@google.com <ap...@google.com> #66
ap...@google.com <ap...@google.com> #67
ap...@google.com <ap...@google.com> #68
Caused by android.os.BadParcelableException
android.os.Parcel.readParcelable (Parcel.java:1958)
...
android.os.Bundle.unparcel (Bundle.java:208)
android.os.Bundle.getSparseParcelableArray (Bundle.java:1167)
android.support.design.internal.NavigationMenuPresenter.onRestoreInstanceState (SourceFile:174)
android.support.v7.view.menu.MenuBuilder.dispatchRestoreInstanceState (SourceFile:348)
android.support.v7.view.menu.MenuBuilder.restorePresenterStates (SourceFile:360)
android.support.design.widget.NavigationView.onRestoreInstanceState (SourceFile:197)
...
android.support.v4.app.Fragment.restoreViewState (SourceFile:475)
...
android.support.v4.app.FragmentActivity.onStart (SourceFile:615)
gs.envios.app.MainActivity.onStart (SourceFile:325)
ap...@google.com <ap...@google.com> #69
Galaxy S (GT-I9000)
Galaxy Ace (GT-S5830)
Galaxy S Advance (GT-I9070)
Galaxy Ace2 (GT-I8160)
Desire S (saga)
ap...@google.com <ap...@google.com> #70
ap...@google.com <ap...@google.com> #71
ap...@google.com <ap...@google.com> #72
Please work on this, I'm having a lot of issues on 2.3.x devices
ap...@google.com <ap...@google.com> #73
The 'bug' is fixed on API 11+ though.
ap...@google.com <ap...@google.com> #74
ap...@google.com <ap...@google.com> #75
ap...@google.com <ap...@google.com> #77
With 24.2.0 I'm still getting (in API<=11):
android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
As in the previous post from Dec 7, 2015.
ap...@google.com <ap...@google.com> #78
ap...@google.com <ap...@google.com> #79
ap...@google.com <ap...@google.com> #80
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate appsearch to use JSpecify annotations
Expand for full commit details
Migrate appsearch to use JSpecify annotations
CL created by running `development/jspecify_update.py appsearch` (appsearch-compiler split into separate CL due to required test changes: aosp/3392094, appsearch-platform-storage split into separate CL due to merge conflict: aosp/3390412)
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: I607a6b39d2455493829fd701db8b2fdfd022bec1
Files:
- M
appsearch/appsearch-builtin-types/build.gradle
- M
appsearch/appsearch-builtin-types/src/androidTest/java/androidx/appsearch/app/ShortcutAdapterTest.java
- M
appsearch/appsearch-builtin-types/src/androidTest/java/androidx/appsearch/builtintypes/PersonTest.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/app/ShortcutAdapter.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/Alarm.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/AlarmInstance.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/ContactPoint.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/ImageObject.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/Person.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/PotentialAction.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/Stopwatch.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/StopwatchLap.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/Thing.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/Timer.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/WebPage.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/builtintypes/properties/Keyword.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/utils/BootCountUtil.java
- M
appsearch/appsearch-builtin-types/src/main/java/androidx/appsearch/utils/DateTimeFormatValidator.java
- M
appsearch/appsearch-debug-view/build.gradle
- M
appsearch/appsearch-debug-view/samples/build.gradle
- M
appsearch/appsearch-debug-view/samples/src/main/java/androidx/appsearch/debugview/samples/NotesActivity.java
- M
appsearch/appsearch-debug-view/samples/src/main/java/androidx/appsearch/debugview/samples/NotesAppSearchManager.java
- M
appsearch/appsearch-debug-view/samples/src/main/java/androidx/appsearch/debugview/samples/model/Note.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/DebugAppSearchManager.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/model/DocumentListModel.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/model/DocumentModel.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/model/SchemaTypeListModel.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/AppSearchDebugActivity.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/DocumentFragment.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/DocumentListFragment.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/DocumentListItemAdapter.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/MenuFragment.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/SchemaTypeListFragment.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/SchemaTypeListItemAdapter.java
- M
appsearch/appsearch-debug-view/src/main/java/androidx/appsearch/debugview/view/ScrollListener.java
- M
appsearch/appsearch-local-storage/build.gradle
- M
appsearch/appsearch-local-storage/src/androidTest/java/androidx/appsearch/localstorage/AppSearchImplTest.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/AppSearchConfigImpl.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/AppSearchImpl.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/AppSearchLogger.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/AppSearchLoggerHelper.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/AppSearchMigrationHelper.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/DocumentLimiter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/FeaturesImpl.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/GlobalSearchSessionImpl.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/JetpackOptimizeStrategy.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/JetpackRevocableFileDescriptorStore.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/LocalStorage.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/NamespaceCache.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/ObserverManager.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/OptimizeStrategy.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/RevocableFileDescriptorStore.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/SchemaCache.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/SearchResultsImpl.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/SearchSessionImpl.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/BlobHandleToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/GenericDocumentToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/ResultCodeToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/SchemaToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/SearchResultToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/SearchSpecToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/SearchSpecToProtoConverterUtil.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/SearchSuggestionSpecToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/SetSchemaResponseToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/converter/TypePropertyPathToProtoConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/CallStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/ClickStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/InitializeStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/OptimizeStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/PutDocumentStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/RemoveStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/SearchIntentStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/SearchSessionStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/SearchStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/stats/SetSchemaStats.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/usagereporting/ClickActionGenericDocument.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/usagereporting/SearchActionGenericDocument.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/usagereporting/SearchSessionStatsExtractor.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/usagereporting/TakenActionGenericDocument.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/util/FutureUtil.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/util/MapUtil.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/util/PrefixUtil.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/CallerAccess.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityChecker.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityDocumentV1.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityStore.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityStoreMigrationHelperFromV0.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityStoreMigrationHelperFromV1.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityToDocumentConverter.java
- M
appsearch/appsearch-local-storage/src/main/java/androidx/appsearch/localstorage/visibilitystore/VisibilityUtil.java
- M
appsearch/appsearch-play-services-storage/build.gradle
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/FeaturesImpl.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/GlobalSearchSessionImpl.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/PlayServicesStorage.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/SearchResultsImpl.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/SearchSessionImpl.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/AppSearchResultToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/GenericDocumentToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/GetSchemaResponseToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/JoinSpecToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/RequestToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/ResponseToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/SchemaToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/SearchResultToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/SearchSpecToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/SearchSuggestionResultToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/SearchSuggestionSpecToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/converter/SetSchemaRequestToGmsConverter.java
- M
appsearch/appsearch-play-services-storage/src/main/java/androidx/appsearch/playservicesstorage/util/AppSearchTaskFutures.java
- M
appsearch/appsearch-test-util/build.gradle
- M
appsearch/appsearch-test-util/src/main/java/androidx/appsearch/testutil/AppSearchEmail.java
- M
appsearch/appsearch-test-util/src/main/java/androidx/appsearch/testutil/AppSearchTestUtils.java
- M
appsearch/appsearch-test-util/src/main/java/androidx/appsearch/testutil/SimpleTestLogger.java
- M
appsearch/appsearch-test-util/src/main/java/androidx/appsearch/testutil/TestObserverCallback.java
- M
appsearch/appsearch-test-util/src/main/java/androidx/appsearch/testutil/flags/CheckFlagsRule.java
- M
appsearch/appsearch-test-util/src/main/java/androidx/appsearch/testutil/flags/DeviceFlagsValueProvider.java
- M
appsearch/appsearch/build.gradle
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/app/AnnotationProcessorLocalTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/app/AnnotationProcessorPlatformTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/app/AnnotationProcessorTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/app/AppSearchSessionInternalTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/app/AppSearchSessionLocalInternalTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/app/AppSearchSessionPlatformInternalTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchMigratorTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSchemaMigrationCtsTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSchemaMigrationLocalCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSchemaMigrationPlatformCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionBlobCtsTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionBlobGmsCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionBlobLocalCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionBlobPlatformCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionCtsTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionGmsCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionLocalCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/AppSearchSessionPlatformCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/GlobalSearchSessionCtsTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/GlobalSearchSessionGmsCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/GlobalSearchSessionLocalCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/GlobalSearchSessionPlatformCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/GmsTestUtil.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/SetSchemaRequestCtsTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/app/customer/CustomerDocumentTest.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/ast/searchtest/AbstractSyntaxTreeSearchCtsTestBase.java
- M
appsearch/appsearch/src/androidTest/java/androidx/appsearch/cts/ast/searchtest/AbstractSyntaxTreeSearchLocalCtsTest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/annotation/Document.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchBatchResult.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchBlobHandle.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchDocumentClassMap.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchEnvironment.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchEnvironmentFactory.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchResult.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchSchema.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/AppSearchSession.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/CommitBlobResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/DocumentClassFactory.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/DocumentClassFactoryRegistry.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/DocumentClassMappingContext.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/EmbeddingVector.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/EnterpriseGlobalSearchSession.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/Features.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/GenericDocument.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/GetByDocumentIdRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/GetSchemaResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/GlobalSearchSession.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/InternalSetSchemaResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/InternalVisibilityConfig.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/JetpackAppSearchEnvironment.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/JoinSpec.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/LongSerializer.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/Migrator.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/OpenBlobForReadResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/OpenBlobForWriteResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/PackageIdentifier.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/PropertyPath.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/PutDocumentsRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/RemoveBlobResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/RemoveByDocumentIdRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/ReportSystemUsageRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/ReportUsageRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SchemaVisibilityConfig.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SearchResult.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SearchResultPage.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SearchResults.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SearchSpec.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SearchSuggestionResult.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SearchSuggestionSpec.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SetBlobVisibilityRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SetSchemaRequest.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/SetSchemaResponse.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/StorageInfo.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/StringSerializer.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/VisibilityPermissionConfig.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/app/aidl/AppSearchBatchResultParcelV2.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/FunctionNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/NegationNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/Node.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/TextNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/operators/AndNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/operators/ComparatorNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/operators/OrNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/operators/PropertyRestrictNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/query/GetSearchStringParameterNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/query/HasPropertyNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/query/PropertyDefinedNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/query/SearchNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/ast/query/SemanticSearchNode.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/exceptions/AppSearchException.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/exceptions/IllegalSchemaException.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/observer/DocumentChangeInfo.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/observer/ObserverCallback.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/observer/ObserverSpec.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/observer/SchemaChangeInfo.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/AbstractSafeParcelable.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/GenericDocumentParcel.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/GenericDocumentParcelCreator.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/PackageIdentifierParcel.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/PackageIdentifierParcelCreator.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/PropertyConfigParcel.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/PropertyParcel.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/PropertyParcelCreator.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/safeparcel/stub/AbstractCreator.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/stats/SchemaMigrationStats.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/usagereporting/ClickAction.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/usagereporting/DismissAction.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/usagereporting/ImpressionAction.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/usagereporting/SearchAction.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/usagereporting/TakenAction.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/util/BundleUtil.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/util/DocumentIdUtil.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/util/ExceptionUtil.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/util/IndentingStringBuilder.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/util/LogUtil.java
- M
appsearch/appsearch/src/main/java/androidx/appsearch/util/SchemaMigrationUtil.java
Hash: ead0fc68e74bebfc1da7a2fd8307e59fc8e11cbf
Date: Thu Dec 05 15:12:20 2024
ap...@google.com <ap...@google.com> #81
phone_model: GT-I9070
android_version: 2.3.6
'com.android.support:design:25.0.1'
'com.android.support:appcompat-v7:25.0.1'
'com.android.support:cardview-v7:25.0.1'
'com.android.support:recyclerview-v7:25.0.1'
stacktrace:java.lang.RuntimeException: Unable to start activity ComponentInfo{xxx}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.design.widget.AppBarLayout$Behavior$SavedState
ap...@google.com <ap...@google.com> #82
Pelase help to confirm it.
ap...@google.com <ap...@google.com> #83
ap...@google.com <ap...@google.com> #84
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{lt.tele2.tsa/lt.tele2.tsa.activities.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2493)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2576)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4191)
at android.app.ActivityThread.access$1100(ActivityThread.java:155)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1427)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5539)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelableCreator(Parcel.java:2432)
at android.os.Parcel.readParcelable(Parcel.java:2358)
at android.os.Parcel.readValue(Parcel.java:2264)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:2675)
at android.os.Parcel.readSparseArray(Parcel.java:1967)
at android.os.Parcel.readValue(Parcel.java:2321)
at android.os.Parcel.readArrayMapInternal(Parcel.java:2614)
at android.os.BaseBundle.unparcel(BaseBundle.java:221)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:856)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2038)
at android.app.Activity.onRestoreInstanceState(Activity.java:1013)
at android.app.Activity.performRestoreInstanceState(Activity.java:968)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1175)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2466)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2576)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4191)
at android.app.ActivityThread.access$1100(ActivityThread.java:155)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1427)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5539)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
ap...@google.com <ap...@google.com> #85
ap...@google.com <ap...@google.com> #86
ap...@google.com <ap...@google.com> #87
ap...@google.com <ap...@google.com> #88
ap...@google.com <ap...@google.com> #89
ap...@google.com <ap...@google.com> #90
This is a large issue on low-end devices (less RAM and therefore this issue will happen significantly more frequently). Is there any kind of a known workaround / fix?
ap...@google.com <ap...@google.com> #91
Just start the app with "don't keep activity" option. Click on a item on the list to start another Activity, then wait a few seconds to ensure that the previous activity has been destroyed, and then press the back button to come back to the previous Activity which will recreate the Activity and it's fragments and Views. While restoring a this error occurs.
From my prospective it seems that this is caused by a View which is part of Fragment which is included in XML's layout. It seems that the Fragment doesn't set a ClassLoader internally and therfore it's not able to restore my view's state.
ap...@google.com <ap...@google.com> #92
ap...@google.com <ap...@google.com> #93
I opened a new ticket as no one seems to look into old tickets.
They can't compile your sample.
Hava a look at
ap...@google.com <ap...@google.com> #94
This is because of a bug in CoordinatorLayout: it does not properly restore its state when the CoordinatorLayout.SavedState constructor is given a null ClassLoader (The ClassLoader argument is always null in API < 13). This can easily be fixed like this:
if (loader == null) {
loader = CoordinatorLayout.class.getClassLoader();
}
Until the bug is fixed, I created a "SafeCoordinatorLayout" which works around the bug and that I'm using as a drop-in replacement of CoordinatorLayout in my projects:
ap...@google.com <ap...@google.com> #95
Pelase help to confirm it.
07-29 18:01:26.886 15283 15283 E AndroidRuntime: FATAL EXCEPTION: main
07-29 18:01:26.886 15283 15283 E AndroidRuntime: Process: com.xxxx.xxxx, PID: 15283
07-29 18:01:26.886 15283 15283 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xxxx.xxxx/com.xxxx.xxxxr}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2583)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2665)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.ActivityThread.-wrap11(ActivityThread.java)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1499)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:111)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Looper.loop(Looper.java:207)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5778)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:801)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:691)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readParcelableCreator(Parcel.java:2411)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readParcelable(Parcel.java:2337)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readValue(Parcel.java:2243)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readSparseArrayInternal(Parcel.java:2653)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readSparseArray(Parcel.java:1946)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readValue(Parcel.java:2300)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Parcel.readArrayMapInternal(Parcel.java:2592)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.BaseBundle.unparcel(BaseBundle.java:222)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.os.Bundle.getSparseParcelableArray(Bundle.java:856)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2076)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.Activity.onRestoreInstanceState(Activity.java:1010)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.Activity.performRestoreInstanceState(Activity.java:965)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1170)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2550)
07-29 18:01:26.886 15283 15283 E AndroidRuntime: ... 9 more
ey...@gmail.com <ey...@gmail.com> #96
meant to have the "r" after "com.xxxx.xxxx" the second time.
On Tue, 1 Aug 2017 9:07 am , <buganizer-system@google.com> wrote:
cp...@google.com <cp...@google.com> #97
Fatal Exception: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: androidx.appcompat.widget.Toolbar$SavedState
at android.os.Parcel.readParcelableCreator(Parcel.java:2845)
at android.os.Parcel.readParcelable(Parcel.java:2771)
at android.os.Parcel.readValue(Parcel.java:2674)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:3124)
at android.os.Parcel.readSparseArray(Parcel.java:2354)
at android.os.Parcel.readValue(Parcel.java:2731)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3043)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288)
at android.os.BaseBundle.unparcel(BaseBundle.java:232)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1010)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2196)
at android.app.Activity.onRestoreInstanceState(Activity.java:1201)
at android.app.Activity.performRestoreInstanceState(Activity.java:1155)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1338)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3340)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2123)
at android.os.Handler.dispatchMessage(Handler.java:109)
at android.os.Looper.loop(Looper.java:207)
at android.app.ActivityThread.main(ActivityThread.java:7470)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:958)
cp...@google.com <cp...@google.com> #98
Only getting this exception on Realme devices with Android 9.0, but unable to reproduce
Hope this issue is taken into account and is fixed ASAP
android.os.BadParcelableException: ClassNotFoundException when unmarshalling: androidx.appcompat.widget.Toolbar$SavedState
at android.os.Parcel.readParcelableCreator()(Parcel.java:2855)
at android.os.Parcel.readParcelable()(Parcel.java:2781)
at android.os.Parcel.readValue()(Parcel.java:2684)
at android.os.Parcel.readSparseArrayInternal()(Parcel.java:3134)
at android.os.Parcel.readSparseArray()(Parcel.java:2367)
at android.os.Parcel.readValue()(Parcel.java:2741)
at android.os.Parcel.readArrayMapInternal()(Parcel.java:3053)
at android.os.BaseBundle.initializeFromParcelLocked()(BaseBundle.java:288)
at android.os.BaseBundle.unparcel()(BaseBundle.java:232)
at android.os.Bundle.getSparseParcelableArray()(Bundle.java:1010)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState()(PhoneWindow.java:2195)
at android.app.Activity.onRestoreInstanceState()(Activity.java:1189)
at android.app.Activity.performRestoreInstanceState()(Activity.java:1144)
at android.app.Instrumentation.callActivityOnRestoreInstanceState()(Instrumentation.java:1318)
at android.app.ActivityThread.handleStartActivity()(ActivityThread.java:3148)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence()(TransactionExecutor.java:180)
at android.app.servertransaction.TransactionExecutor.cycleToPath()(TransactionExecutor.java:165)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState()(TransactionExecutor.java:142)
at android.app.servertransaction.TransactionExecutor.execute()(TransactionExecutor.java:70)
at android.app.ActivityThread$H.handleMessage()(ActivityThread.java:1978)
at android.os.Handler.dispatchMessage()(Handler.java:106)
at android.os.Looper.loop()(Looper.java:232)
at android.app.ActivityThread.main()(ActivityThread.java:7165)
at java.lang.reflect.Method.invoke()(Method.java:-2)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run()(RuntimeInit.java:576)
at com.android.internal.os.ZygoteInit.main()(ZygoteInit.java:888)
ju...@google.com <ju...@google.com> #99
ap...@google.com <ap...@google.com> #100
Brand: Realme
Model: realme U1
Orientation: Portrait
Version: 9
anyFix?
Fatal Exception: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: androidx.recyclerview.widget.RecyclerView$y
at android.os.Parcel.readParcelableCreator(Parcel.java:2855)
at android.os.Parcel.readParcelable(Parcel.java:2781)
at android.os.Parcel.readValue(Parcel.java:2684)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:3134)
at android.os.Parcel.readSparseArray(Parcel.java:2367)
at android.os.Parcel.readValue(Parcel.java:2741)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3053)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288)
at android.os.BaseBundle.unparcel(BaseBundle.java:232)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1010)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2204)
at android.app.Activity.onRestoreInstanceState(Activity.java:1204)
at android.app.Activity.performRestoreInstanceState(Activity.java:1159)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1317)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3215)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:185)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:170)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:147)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:73)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2038)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:226)
at android.app.ActivityThread.main(ActivityThread.java:7178)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:576)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:942)
ap...@google.com <ap...@google.com> #101
Brand: Oppo
Model: realme 1
Orientation: Portrait
Version: 9
Fatal Exception: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: androidx.recyclerview.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelableCreator(Parcel.java:2855)
at android.os.Parcel.readParcelable(Parcel.java:2781)
at android.os.Parcel.readValue(Parcel.java:2684)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:3134)
at android.os.Parcel.readSparseArray(Parcel.java:2367)
at android.os.Parcel.readValue(Parcel.java:2741)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3053)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288)
at android.os.BaseBundle.unparcel(BaseBundle.java:232)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1010)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2204)
at android.app.Activity.onRestoreInstanceState(Activity.java:1204)
at android.app.Activity.performRestoreInstanceState(Activity.java:1159)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1317)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3215)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:185)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:170)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:147)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:73)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2038)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:226)
at android.app.ActivityThread.main(ActivityThread.java:7178)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:576)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:942)
ap...@google.com <ap...@google.com> #102
Brand: Only Oppo
Model: Only Realme 2 Pro
Version: Only 9
Fatal Exception: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: androidx.recyclerview.widget.RecyclerView$SavedState
at android.os.Parcel.readParcelableCreator(Parcel.java:2855)
at android.os.Parcel.readParcelable(Parcel.java:2781)
at android.os.Parcel.readValue(Parcel.java:2684)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:3134)
at android.os.Parcel.readSparseArray(Parcel.java:2367)
at android.os.Parcel.readValue(Parcel.java:2741)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3053)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288)
at android.os.BaseBundle.unparcel(BaseBundle.java:232)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1010)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2204)
at android.app.Activity.onRestoreInstanceState(Activity.java:1204)
at android.app.Activity.performRestoreInstanceState(Activity.java:1159)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1317)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3215)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:185)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:170)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:147)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:73)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2038)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:226)
at android.app.ActivityThread.main(ActivityThread.java:7178)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:576)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:942)
ap...@google.com <ap...@google.com> #103
Only getting this exception on Realme devices with Android 10.0, but unable to reproduce
Hope this issue is taken into account and is fixed ASAP
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readParcelableCreator(Parcel.java:3056)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readParcelable(Parcel.java:2978)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readValue(Parcel.java:2880)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readSparseArrayInternal(Parcel.java:3341)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readSparseArray(Parcel.java:2498)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readValue(Parcel.java:2937)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Parcel.readArrayMapInternal(Parcel.java:3258)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:297)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.BaseBundle.unparcel(BaseBundle.java:241)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Bundle.getSparseParcelableArray(Bundle.java:1029)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2279)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.Activity.onRestoreInstanceState(Activity.java:1588)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.Activity.performRestoreInstanceState(Activity.java:1543)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1400)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3565)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2246)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:107)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.os.Looper.loop(Looper.java:230)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7763)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:508)
02-01 09:33:29.082585 31587 31587 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1034)
ap...@google.com <ap...@google.com> #104
ap...@google.com <ap...@google.com> #105
android.os.BadParcelableException: ClassNotFoundException when unmarshalling: androidx.appcompat.widget.Toolbar$SavedState
at android.os.Parcel.readParcelableCreator(Parcel.java:2847)
at android.os.Parcel.readParcelable(Parcel.java:2768)
at android.os.Parcel.readValue(Parcel.java:2671)
at android.os.Parcel.readSparseArrayInternal(Parcel.java:3126)
at android.os.Parcel.readSparseArray(Parcel.java:2354)
at android.os.Parcel.readValue(Parcel.java:2728)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3045)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288)
at android.os.BaseBundle.unparcel(BaseBundle.java:232)
at android.os.Bundle.getSparseParcelableArray(Bundle.java:1010)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2133)
at android.app.Activity.onRestoreInstanceState(Activity.java:1173)
at android.app.Activity.performRestoreInstanceState(Activity.java:1128)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1317)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3017)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:185)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:170)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:147)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:73)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1859)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6831)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:927)
Back traces end.
ap...@google.com <ap...@google.com> #106
and System version is 9 and 10 ;
ap...@google.com <ap...@google.com> #107
12-08 04:38:53.529 28587 28587 E AndroidRuntime: FATAL EXCEPTION: main 12-08 04:38:53.529 28587 28587 E AndroidRuntime: Process: com.aliyun.rtc, PID: 28587 12-08 04:38:53.529 28587 28587 E AndroidRuntime: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: android.support.v7.widget.RecyclerView$SavedState 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readParcelableCreator(Parcel.java:2847) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readParcelable(Parcel.java:2768) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readValue(Parcel.java:2671) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readSparseArrayInternal(Parcel.java:3126) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readSparseArray(Parcel.java:2354) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readValue(Parcel.java:2728) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Parcel.readArrayMapInternal(Parcel.java:3045) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:288) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.BaseBundle.unparcel(BaseBundle.java:232) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Bundle.getSparseParcelableArray(Bundle.java:1010) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2133) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.Activity.onRestoreInstanceState(Activity.java:1173) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.Activity.performRestoreInstanceState(Activity.java:1128) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1318) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3025) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1840) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.os.Looper.loop(Looper.java:207) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:6878) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) 12-08 04:38:53.529 28587 28587 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876) 12-08 04:38:53.636 30776 30776 D AndroidRuntime: >>>>>> START com.android.internal.os.RuntimeInit uid 2000 <<<<<< 12-08 04:38:53.814 28587 28587 I MotuCrashSDK: 12-08 04:38:53.528 28587 28587 D AndroidRuntime: Shutting down VM
same crash
ap...@google.com <ap...@google.com> #108
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate inspection to use JSpecify annotations
Expand for full commit details
Migrate inspection to use JSpecify annotations
CL created by running `development/jspecify_update.py inspection`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: I228370b08b2b03a5367c9e4cb578e6eb2578cb1c
Files:
- M
inspection/inspection/build.gradle
- M
inspection/inspection/src/main/java/androidx/inspection/ArtTooling.java
- M
inspection/inspection/src/main/java/androidx/inspection/ArtToolingImpl.java
- M
inspection/inspection/src/main/java/androidx/inspection/Connection.java
- M
inspection/inspection/src/main/java/androidx/inspection/DefaultArtTooling.java
- M
inspection/inspection/src/main/java/androidx/inspection/Inspector.java
- M
inspection/inspection/src/main/java/androidx/inspection/InspectorEnvironment.java
- M
inspection/inspection/src/main/java/androidx/inspection/InspectorExecutors.java
- M
inspection/inspection/src/main/java/androidx/inspection/InspectorFactory.java
Hash: 9e5ee7086a890d9ac8fbe4eafce9d133326a8a54
Date: Wed Nov 20 14:51:19 2024
ap...@google.com <ap...@google.com> #109
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate constraintlayout to use JSpecify annotations
Expand for full commit details
Migrate constraintlayout to use JSpecify annotations
CL created by running `development/jspecify_update.py constraintlayout`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: I69cfdb2f635e36fda566b8f45979947c66aa8861
Files:
- M
constraintlayout/constraintlayout-core/build.gradle
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/parser/CLContainer.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/parser/CLElement.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/parser/CLObject.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/parser/CLString.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/ConstraintReference.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/ConstraintSetParser.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/State.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/Transition.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/TransitionParser.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/WidgetFrame.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/helpers/ChainReference.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/state/helpers/GridReference.java
- M
constraintlayout/constraintlayout-core/src/main/java/androidx/constraintlayout/core/utils/GridCore.java
- M
constraintlayout/constraintlayout-core/src/test/java/androidx/constraintlayout/core/AdvancedChainTest.java
- M
constraintlayout/constraintlayout-core/src/test/java/androidx/constraintlayout/core/ArrayLinkedVariablesTest.java
- M
constraintlayout/constraintlayout-core/src/test/java/androidx/constraintlayout/core/BarrierTest.java
- M
constraintlayout/constraintlayout-core/src/test/java/androidx/constraintlayout/core/RandomLayoutTest.java
- M
constraintlayout/constraintlayout-core/src/test/java/androidx/constraintlayout/core/widgets/ChainHeadTest.java
- M
constraintlayout/constraintlayout/build.gradle
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/helper/widget/Grid.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/motion/widget/MotionLayout.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/motion/widget/MotionPaths.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/utils/widget/ImageFilterButton.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/utils/widget/ImageFilterView.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/utils/widget/MockView.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/utils/widget/MotionButton.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/utils/widget/MotionLabel.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/utils/widget/MotionTelltales.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/widget/ConstraintHelper.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/widget/ConstraintLayout.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/widget/ConstraintLayoutStatistics.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/widget/Guideline.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/widget/Placeholder.java
- M
constraintlayout/constraintlayout/src/main/java/androidx/constraintlayout/widget/ReactiveGuide.java
Hash: 586de0fbefc79925d8e5263ecf83ddba70655475
Date: Tue Dec 03 10:01:48 2024
ap...@google.com <ap...@google.com> #110
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate credentials to use JSpecify annotations
Expand for full commit details
Migrate credentials to use JSpecify annotations
CL created by running `development/jspecify_update.py credentials`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Change-Id: I31c2e1a5137087261b3ee67742766011b19968b8
Files:
- M
credentials/credentials-e2ee/build.gradle
- M
credentials/credentials-e2ee/src/androidTest/java/androidx/credentials/e2ee/IdentityKeyJavaTest.java
- M
credentials/credentials/build.gradle
- M
credentials/credentials/src/androidTest/java/androidx/credentials/CredentialManagerJavaTest.java
- M
credentials/credentials/src/androidTest/java/androidx/credentials/GetPublicKeyCredentialOptionJavaTest.java
- M
credentials/credentials/src/androidTest/java/androidx/credentials/GetRestoreCredentialOptionJavaTest.java
- M
credentials/credentials/src/androidTest/java/androidx/credentials/provider/PendingIntentHandlerApi23JavaTest.java
- M
credentials/registry/registry-provider/build.gradle
- M
credentials/registry/registry-provider/src/androidTest/java/androidx/credentials/registry/provider/RegistryManagerJavaTest.java
Hash: c6a70aaf066af15723eb21e6862ff948f25c939a
Date: Sat Dec 14 10:40:04 2024
ap...@google.com <ap...@google.com> #111
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate tvprovider to use JSpecify annotations
Expand for full commit details
Migrate tvprovider to use JSpecify annotations
CL created by running `development/jspecify_update.py tvprovider`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: I4fcdf3ed392d15751627922d586eac18f821d0d2
Files:
- M
tvprovider/tvprovider/build.gradle
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/BaseProgram.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/Channel.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/ChannelLogoUtils.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/PreviewChannel.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/PreviewChannelHelper.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/PreviewProgram.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/Program.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/TvContractCompat.java
- M
tvprovider/tvprovider/src/main/java/androidx/tvprovider/media/tv/WatchNextProgram.java
Hash: b3cac9c0f8ff177d9a03a067de9e46b935f9599d
Date: Thu Nov 21 11:48:14 2024
ap...@google.com <ap...@google.com> #112
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate room to use JSpecify annotations
Expand for full commit details
Migrate room to use JSpecify annotations
CL created by running `development/jspecify_update.py room`
The testapp integration test is run against a pre-KMP version of the room compiler, and this compiler version also doesn't have the fix to recognize JSpecify annotations on primary keys (aosp/3237981). For this project, I left the AndroidX @NonNull on primary keys and suppressed the lint check.
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: I9eea0a14375491b11bc0a5365d82dfd05e6b8e98
Files:
- M
room/integration-tests/autovaluetestapp/build.gradle
- M
room/integration-tests/autovaluetestapp/src/androidTest/java/androidx/room/integration/autovaluetestapp/test/MailDaoTest.java
- M
room/integration-tests/autovaluetestapp/src/androidTest/java/androidx/room/integration/autovaluetestapp/vo/ParcelableEntity.java
- M
room/integration-tests/noappcompattestapp/build.gradle
- M
room/integration-tests/noappcompattestapp/src/androidTest/java/androidx/room/integration/noappcompat/BareDatabaseTest.java
- M
room/integration-tests/testapp/build.gradle
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/dao/PetDao.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/dao/ProductDao.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/dao/UserDao.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/migration/AutoMigrationDb.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/migration/AutoMigrationTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/migration/FtsMigrationTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/migration/JournalDbPostMigrationTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/migration/MigrationTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/migration/ProvidedAutoMigrationSpecTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/paging/DataSourceFactoryTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/paging/LimitOffsetDataSourceTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/AutoClosingRoomOpenHelperTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/ByteBufferColumnTypeAdapterTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/ClearAllTablesTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/ConstructorTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/CustomDatabaseTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/DatabaseCallbackTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/DatabaseViewTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/EntityUpsertionAdapterTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/GenericEntityTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/InvalidationTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/InvalidationTrackerBehavioralTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/InvalidationTrackerTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/MultiInstanceInvalidationTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/NoBackupDirectoryTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/PrepackageTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/ProvidedTypeConverterTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/QueryTransactionTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/RxJava2Test.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/RxJava2WithInstantTaskExecutorTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/RxJava3Test.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/TestObserver.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/TypeConverterPriorityTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/WriteAheadLoggingTest.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/Hivemind.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/ObjectPKeyEntity.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/PetCouple.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/Product.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/Robot.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/Toy.java
- M
room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/vo/UserAndPetNonNull.java
- M
room/integration-tests/testapp/src/androidTestWithNullAwareTypeConverter/java/androidx/room/integration/test/RecordPojoTest.java
- M
room/integration-tests/testapp/src/main/java/androidx/room/integration/testapp/SampleDatabaseService.java
- M
room/integration-tests/testapp/src/main/java/androidx/room/integration/testapp/database/Customer.java
- M
room/room-compiler-processing/build.gradle
- M
room/room-compiler-processing/src/test/java/androidx/room/compiler/processing/JavaImplProcessingStep.java
- M
room/room-guava/build.gradle
- M
room/room-guava/src/androidTest/java/androidx/room/guava/GuavaRoomTest.java
- M
room/room-runtime/build.gradle
- M
room/room-runtime/src/androidMain/java/androidx/room/paging/LimitOffsetDataSource.java
Hash: e54a2363e6fd81c3eb8693fb1e38a34ab1c93769
Date: Sat Dec 14 10:32:04 2024
ap...@google.com <ap...@google.com> #113
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate recyclerview to use JSpecify annotations
Expand for full commit details
Migrate recyclerview to use JSpecify annotations
CL created by running `development/jspecify_update.py recyclerview`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Relnote: "This library now uses [JSpecify nullness annotations](https://jspecify.dev/), which are type-use. Kotlin developers should use the following compiler arguments to enforce correct usage: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode"
Change-Id: I03b80dbabc45393ade3436280e82f17ee050b9b7
Files:
- M
recyclerview/recyclerview-selection/build.gradle
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/BandSelectionHelperTest.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/GestureDetectorWrapperTest.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/StableIdKeyProviderTest.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/ViewAutoScrollerTest.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/SelectionTrackers.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestBandPredicate.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestItemDetails.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestItemDetailsLookup.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestOnItemActivatedListener.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestOnItemTouchListener.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
- M
recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionPredicate.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/AutoScroller.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/BandPredicate.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/BandSelectionHelper.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultBandHost.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DisallowInterceptFilter.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/EventBackstop.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/EventBridge.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/EventRouter.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/FocusDelegate.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureDetectorWrapper.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureRouter.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureSelectionHelper.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GridModel.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemDetailsLookup.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MotionEvents.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MotionInputHandler.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MouseInputHandler.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MutableSelection.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/OnContextClickListener.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/OnDragInitiatedListener.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/OnItemActivatedListener.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/OperationMonitor.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/PointerDragEventInterceptor.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/Range.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ResetManager.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/Selection.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/SelectionPredicates.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/SelectionTracker.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/StableIdKeyProvider.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/StorageStrategy.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/StubOnItemTouchListener.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ToolSourceHandlerRegistry.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ToolSourceKey.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/TouchInputHandler.java
- M
recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ViewAutoScroller.java
- M
recyclerview/recyclerview/build.gradle
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/test/NestedScrollingParent2Adapter.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/AsyncListUtilLayoutTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/AttachDetachCollector.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/BaseLinearLayoutManagerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/BaseRecyclerViewInstrumentationTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/BaseStaggeredGridLayoutManagerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/BaseWrapContentTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/BaseWrapContentWithAspectRatioTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/CustomEdgeEffectTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/DefaultItemAnimatorTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/DividerItemDecorationTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/FocusSearchNavigationTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/GridLayoutManagerCustomSizeInScrollDirectionTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/GridLayoutManagerRtlTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/GridLayoutManagerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/GridLayoutManagerUiAutomationTests.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/GridLayoutManagerWrapContentTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/ItemAnimatorTestDouble.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/ItemAnimatorV2ApiTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/ItemTouchHelperTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LinearLayoutManagerBaseConfigSetTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LinearLayoutManagerExtraLayoutSpaceTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LinearLayoutManagerPrepareForDropTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LinearLayoutManagerSnappingTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LinearLayoutManagerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LinearSmoothScrollerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/LoggingItemAnimator.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/MultiRecyclerViewPrefetchTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecycledViewPoolTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerListenerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewAccessibilityLifecycleTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewAccessibilityTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewAnimationsTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewBasicTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewCacheTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewFastScrollerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewFocusRecoveryTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewLayoutTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrolling3RequestDisallowInterceptTouchTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrollingA11yScrollTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrollingChildTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrollingMouseScrollTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrollingScrollByTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrollingSmoothScrollByTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewNestedScrollingTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/RecyclerViewOnGenericMotionEventTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/StaggeredGridLayoutManagerBaseConfigSetTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/StaggeredGridLayoutManagerCacheTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/StaggeredGridLayoutManagerSnappingTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/StaggeredGridLayoutManagerTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/StretchEdgeEffectTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/TestContentView.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/TestResizingRelayoutWithAutoMeasure.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/TestedFrameLayout.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/ViewBoundsCheckTest.java
- M
recyclerview/recyclerview/src/androidTest/java/androidx/recyclerview/widget/WrapContentBasicTest.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/AdapterListUpdateCallback.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/AsyncDifferConfig.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/AsyncListDiffer.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/AsyncListUtil.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/BatchingListUpdateCallback.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ConcatAdapter.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ConcatAdapterController.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/DefaultItemAnimator.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/DiffUtil.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/DividerItemDecoration.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/FastScroller.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/GapWorker.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/GridLayoutManager.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ItemTouchHelper.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ItemTouchUIUtilImpl.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/LinearLayoutManager.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/LinearSnapHelper.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ListAdapter.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ListUpdateCallback.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/NestedAdapterWrapper.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/PagerSnapHelper.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/RecyclerView.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/RecyclerViewAccessibilityDelegate.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/SimpleItemAnimator.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/SnapHelper.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/SortedList.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/StableIdStorage.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/StaggeredGridLayoutManager.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/TileList.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ViewInfoStore.java
- M
recyclerview/recyclerview/src/main/java/androidx/recyclerview/widget/ViewTypeStorage.java
- M
recyclerview/recyclerview/src/test/java/androidx/recyclerview/widget/SortedListBatchedCallbackTest.java
- M
recyclerview/recyclerview/src/test/java/androidx/recyclerview/widget/SortedListTest.java
- M
recyclerview/recyclerview/src/test/java/androidx/recyclerview/widget/ViewInfoStoreTest.java
Hash: f0fab6de9e079afce5bc7a1d9213f26b4ceb43c1
Date: Thu Nov 21 10:10:27 2024
ap...@google.com <ap...@google.com> #114
Project: platform/frameworks/support
Branch: androidx-main
Author: Julia McClellan <
Link:
Migrate gridlayout to use JSpecify annotations
Expand for full commit details
Migrate gridlayout to use JSpecify annotations
CL created by running `development/jspecify_update.py gridlayout`
We are updating all AndroidX libraries to use the Jspecify nullness annotations (https://docs.google.com/document/d/1XjainD032hUdCfgXIzRThHvP9FJANYuocKaTDXWuLXo/edit?usp=sharing)
Bug: 326456246
Test: `checkApi`, `lint`, `runErrorProne`
Change-Id: I54c6254f1cafc1373f32f0c0195955bd4f9bc671
Files:
- M
gridlayout/gridlayout/build.gradle
- M
gridlayout/gridlayout/src/androidTest/java/androidx/gridlayout/widget/TestContentView.java
Hash: e012b53440d6967ab6d735ec9f0f007b3b3b72ca
Date: Sat Dec 14 10:56:09 2024
Description