2016-03-09 7 views
2

У меня есть приложение, в котором я получил tablayout с двумя фрагментами, приложение работает отлично, но когда я закрываю приложение с помощью кнопки меню и некоторое время использую другие приложения, и когда я возобновляю свое приложение, падает со следующим исключениемUnmarshalling неизвестный тип код исключения при возобновлении

неустранимым: Основной процесс: com.example.com, PID: 5674 java.lang.RuntimeException: Невозможно запустить активность ComponentInfo {com.example.com/com.example. ui.activity.MainActivity}: java.lang.RuntimeException: Parcel [email protected]: Unmarshalling неизвестный код типа 3801188 при смещении 4392 на android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2426) на android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2490) на android.app.ActivityThread.-wrap11 (ActivityThread.java) на android. app.ActivityThread $ H.handleMessage (ActivityThread.java:1354) на android.os.Handler.dispatchMessage (Handler.java:102) на android.os.Looper.loop (Looper.java:148) на android. app.ActivityThread.main (ActivityThread.java:5443) at java.lang.reflect.Method.invoke (собственный метод) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:728) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:618) Вызвано: java.lang.RuntimeException: Parcel [email protected]: Unmarshalling неизвестный код типа 3801188 при смещении 4392 на android .os.Parcel.readValue (Parcel.java:2340) на android.os.Parcel.readArrayMapInternal (Parcel.java:2614) на android.os.BaseBundle.unparcel (BaseBundle.java:221) на android.os .Bundle.getSparseParcelableArray (Bundle.java:856) at com.android.internal.policy.PhoneWindow.restoreHierarchyState (PhoneWindow.java:2033) на android.app.Activity.onRestoreInstanceState (Activity.java:1008) на android.app.Activity.performRestoreInstanceState (Activity.java:963) в android.app.Instrumentation.callActivityOnRestoreInstanceState (Instrumentation.java:1186) в android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2399) на android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2490) на android.app.ActivityThread.-wrap11 (ActivityThread.java) на android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1354) на android .os.Handler.dispatchMessage (Handler.java:102) на android.os.Looper.loop (Looper.java:148) at android.app.ActivityThread.main (ActivityThread.java:5443) at java.lang.reflect.Method.invoke (собственный метод) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java: 728) на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:618)

я попытался отключить ProGuard и добавить ниже код, но ничего не помогает

-keepclassmembers класс * реализует android.os.Исходный { статический ** СОЗДАТЕЛЬ; }

У меня есть настраиваемое представление, но не реализовал parcelable в них также я полосатый всем от фрагмента и только сохранил вид даже тогда это было сбоя, но, когда я был просто загрузки экземпляра фрагмента как нового андроид .support.v4.app.Fragment(); я не получаю ошибку

+0

Возможный дубликат [Исходный код неизвестного типа] (http://stackoverflow.com/questions/19672772/parcel-unmarshalling-unknown-type-code) –

+0

Поскольку я попытался выяснить проблему, я увидел, что когда я удаляю android.support.v7.widget.SearchView из моего кода меню опций фрагмента не разбился, это может быть возможной проблемой, но не знает, почему это происходит. –

ответ

1

Я сталкивался с такой же вопрос и нашел решение запустить приложение снова, чтобы остановить крах
В вашем MainActivity Использование:

@Override 
protected void onRestoreInstanceState(Bundle savedInstanceState) { 
    try { 
     super.onRestoreInstanceState(savedInstanceState); 
    }catch (Exception e){ 
     e.printStackTrace(); 
     Intent intent=new Intent(this,MainActivity.class); 
     intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
     intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
     intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(intent); 
    } 
} 
+0

thnx за помощь в решении, но все же я не могу понять, почему это произошло, когда я использовал searchview в android. –

+0

@Ankit Singh: Примите ответ, если он помог решить вашу проблему. – Andy

+0

Это скорее обходной путь, но он Работа. У меня есть та же самая проблема с поиском, действительно странная вещь. –

2

Это было связано с bug in SearchView поскольку appcompat v23.2.0.

Исправлено в v23.2.1. Обновите свои библиотеки поддержки, чтобы избавиться от исключения.

 Смежные вопросы

  • Нет связанных вопросов^_^