在升级到支持库23.2.0后,在偏移4752处解组未知类型代码6881391

问题描述 投票:0回答:1

我的应用程序在支持库23.1.1上运行良好。但是,升级到支持库23.2.0后,它开始崩溃。当我从活动导航回主活动时发生崩溃(例如,我从主活动的操作栏菜单中打开about活动,然后按返回按钮返回主活动,然后崩溃)。

崩溃日志在这里:

致命异常:主要进程:com.myapp.blah.blah,PID:22124 java.lang.RuntimeException:无法启动活动ComponentInfo {com.myapp.blah.blah / com.myapp.blah.blah.ui.MainActivity}: java.lang.RuntimeException:parcel android.os.Parcel@41d10870:在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java)的android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2429)的偏移量4752处解组未知类型代码6881391 :2493)在Android.app.Handler.dispatchMessage(Handler.java:102)的android.app.ActivityThread.access $ 800(ActivityThread.java:166)android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1283) )在android.app.Looper.loop(Looper.java:136)的android.app.ActivityThread.main(ActivityThread.java:5584)java.lang上的java.lang.reflect.Method.invokeNative(Native Method)。在com.android.internal.os.ZygoteInit.main(Zygote)的com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1268)中的reflect.Method.invoke(Method.java:515)。 init.java:1084)at dalvik.system.NativeStart.main(Native Method)引起:java.lang.RuntimeException:Parcel android.os.Parcel@41d10870:在android.os.Parcel的偏移量4752解组未知类型代码6881391 .readValue(Parcel.java:2087)位于android.os.Bandle.getSparseParcelableArray(Bundle。)的android.os.Parcel.readArrayMapInternal(Parcel.java:2321)android.os.Bundle.unparcel(Bundle.java:249)。 java:1273)com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1884)at android.app.Activity.onRestoreInstanceState(Activity.java:989)at android.app.Activity.performRestoreInstanceState(Activity .java:961)在Android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2493)的android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1145)android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2407) ?在android.app.ActivityThread.access $ 800(ActivityThread.java:166)?在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1283)?在android.os.Handler.dispatchMessage(Handler.java:102)?在android.os.Looper.loop(Looper.java:136)?在android.app.ActivityThread.main(ActivityThread.java:5584)?在java.lang.reflect.Method.invokeNative(Native Method)?在java.lang.reflect.Method.invoke(Method.java:515)?在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1268)?在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084)?在dalvik.system.NativeStart.main(Native方法)?

只有在我设置开发人员调试选项“不要保持活动”时才会发生崩溃。如果此选项关闭,则不会发生崩溃。

崩溃发生在没有使用Proguard的调试模式下。

我没有在活动之间传递任何parcels / bundle,也不使用startActivityForResult()。

Lollipop设备前后都会发生崩溃。

我找到了两个类似的帖子herehere,可能(或可能不)相关。

android android-support-library parcelable parcel
1个回答
0
投票

在appcompat 23.2中将SearchView与id资源一起使用时解组异常

嗨,它可以通过实现onSavedInstanceonRestore修复,但不要使用超级。这种奇怪的行为

@Override
    protected void onSaveInstanceState(Bundle outState) {
     }

    @Override
    protected void onRestoreInstanceState(Bundle savedInstanceState) {

    }
© www.soinside.com 2019 - 2024. All rights reserved.