2016-03-07 8 views
1

поэтому я полностью в тупике от этой ошибки, и она отличается от других вопросов, так как я не использую объект Parcel. Был бы признателен за любое руководство, поскольку я даже не знаю, с чего начать, поскольку он не указывает на какой-либо класс или метод или строку в моем коде.Parcel unmarshalling неизвестные типы

Fatal Exception: java.lang.RuntimeException 
Unable to start activity ComponentInfo{com.blueinklabs.investifystocks.free/com.blueinklabs.investifystocks.MainActivity}: java.lang.RuntimeException: Parcel [email protected]: Unmarshalling unknown type code 3801188 at offset 3396 
raw 
android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2658) 
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2723) 
android.app.ActivityThread.access$900 (ActivityThread.java:172) 
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1422) 
android.os.Handler.dispatchMessage (Handler.java:102) 
android.os.Looper.loop (Looper.java:145) 
android.app.ActivityThread.main (ActivityThread.java:5832) 
java.lang.reflect.Method.invoke (Method.java) 
java.lang.reflect.Method.invoke (Method.java:372) 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1399) 
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1194) 

Продолжение:

Caused by java.lang.RuntimeException 
android.os.Parcel.readValue (Parcel.java:2222) 
android.os.Parcel.readArrayMapInternal (Parcel.java:2479) 
android.os.BaseBundle.unparcel (BaseBundle.java:221) 
android.os.Bundle.getSparseParcelableArray (Bundle.java:871) 
com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState (PhoneWindow.java:2156) 
android.app.Activity.onRestoreInstanceState (Activity.java:1082) 
android.app.Activity.performRestoreInstanceState (Activity.java:1027) 
android.app.Instrumentation.callActivityOnRestoreInstanceState (Instrumentation.java:1175) 
android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2631) 
android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2723) 
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1194) 

EDIT: 1) У меня есть следующий приемник Broadcast для IAB:

mBroadcastReceiver = new IabBroadcastReceiver(MainActivity.this); 
IntentFilter broadcastFilter = new IntentFilter(IabBroadcastReceiver.ACTION); 
registerReceiver(mBroadcastReceiver, broadcastFilter); 

2) Я недавно добавил Fabric.io для их библиотеки Crashlytics (Мне сообщают об ошибке через Crashlytics, так что, возможно, я столкнулся с ошибками до этого, но не сообщалось об авариях в Google Play)

3) Ниже приведен мой метод получения намерений от будильников. Но я вижу ошибки в течение дня и не обязательно во время запуска этих намерений.

@Override 
    protected void onNewIntent(Intent intent) { 
     super.onNewIntent(intent); 
    //Log.e("THIS", "IS RUNNING"); 
    NotificationManager notifManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
    notifManager.cancelAll(); 

    String myString = intent.getStringExtra(EXTRA_WHICH); 
    if (myString != null) { 
     if (myString.equals("MORNING")) { 
      //Log.e("HEY", "FROM MORNING NOTI"); 
      String settingsString = intent.getStringExtra(EXTRA_SETTINGS); 
      if (settingsString != null) { 
       if (settingsString.equals("YES")) { 
        Intent newIntent = new Intent(MainActivity.this, SettingsActivity.class); 
        startActivity(newIntent); 
       } 
      } 

     } else { 
      //Log.e("HEY", "FROM EVENING NOTI"); 
      String settingsString = intent.getStringExtra(EXTRA_SETTINGS); 
      if (settingsString != null) { 
       if (settingsString.equals("YES")) { 
        Intent newIntent = new Intent(MainActivity.this, SettingsActivity.class); 
        startActivity(newIntent); 
       } 
      } else { 
       String myStringMovers = intent.getStringExtra(EXTRA_MOVERS); 
       //Log.e("HEY", myStringMovers); 
       if (myStringMovers.equals("YES")) { 
        myViewPager.setCurrentItem(1); 
        Intent newIntent = new Intent(MainActivity.this, IndexDetailActivity.class); 
        newIntent.putExtra(IndexDetailActivity.EXTRA_NAME, "KSE100"); 
        newIntent.putExtra(IndexDetailActivity.EXTRA_FULLNAME, "KSE 100 INDEX"); 
        startActivityForResult(newIntent, 111); 
       } else { 
        myViewPager.setCurrentItem(1); 
       } 
      } 
     } 
    } 
} 
+0

Вы передаете любые сериализуемые или доступные в комплекте пакеты? –

+1

вы используете некоторые библиотеки, где я думаю, что класс посылок используется? – keshav

+0

Не имеют каких-либо подробных или сериализуемых значений. Просто передайте строковые намерения, чтобы захватить тот, который был вызван сигналом тревоги. Но я делаю это в течение нескольких месяцев без каких-либо отчетов в игре Google как таковой. – dejavu89

ответ

0

Итак, я понял, что это была проблема, которая, вероятно, произошла из-за последней библиотеки поддержки дизайна Android 23.2.0.

Пожалуйста, смотрите соответствующий код вопрос здесь:

https://code.google.com/p/android/issues/detail?id=201836

1

я фиксироваться этим обходным путем, то не реализует функцию обратного вызова.

@Override 
protected void onSaveInstanceState(Bundle outState) {} 

@Override 
protected void onRestoreInstanceState(Bundle savedInstanceState) {}