Unmarshalling неизвестный код типа 6881391 по смещению 4752 после обновления до библиотек поддержки 23.2.0
Мое приложение хорошо работает в библиотеках поддержки 23.1.1. Однако после обновления до библиотеки поддержки 23.2.0 происходит сбой. Сбой происходит, когда я возвращаюсь от действия обратно к основному действию (например, я открываю информацию об активности из меню панели действий основного действия, затем нажимаю кнопку "Назад", чтобы вернуться к основному действию, затем происходит сбой).
Журнал аварий находится здесь:
ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: главный процесс: 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: Снять код неизвестного типа 6881391 по смещению 4752 в android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2429) в android.app.ActivityThread.handleLreadActivityJctivity (ActivityThread:2493) в 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(собственный метод) на java.lang. refle.Method.invoke(Method.java:515) на com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1268) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1084) at dalvik.system.NativeStart.main(собственный метод). Вызывается: java.lang.RuntimeException: Parcel android.os.Parcel@41d10870: отмена вызова кода неизвестного типа 6881391 по смещению 4752 в android.os.Parcel.readValue(Parcel.java:2087) на android.os.Parcel.readArrayMapInternal(Parcel.java:2321) на android.os.Bundle.unparcel(Bundle.java:249) на android.os.Bundle.getSparseParcelableArray(Bundle. Java:1273) в com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1884) в android.app.Activity.onRestoreInstanceState(Activity.java:989) в android.app.Activity.performRestoreInstanceState(Activity.java:961) в android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1145) в android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2407) в android.app.ActivityThread.handleLaunchActivity(ActivityThread)java:? на 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(родной метод)? на 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 (родной метод)?
Авария происходит только в том случае, если я установил опцию отладки разработчика "не сохранять действия". Сбой не происходит, если эта опция отключена.
Сбои происходят в режиме отладки, когда Proguard не используется.
Я не передаю посылки / связки между действиями и не использую startActivityForResult().
Сбой происходит как до, так и после устройства Lollipop.
Я нашел два похожих поста здесь и здесь, которые могут (или не могут) быть связаны.
1 ответ
Unmarshalling исключение при использовании SearchView с ресурсом id в appcompat 23.2
Привет, это можно исправить путем реализации onSavedInstance
а также onRestore
но не используйте супер. Это странное поведение
@Override
protected void onSaveInstanceState(Bundle outState) {
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
}