TransactionTooLargeException при вызове onSaveInstanceState - PullRequest
0 голосов
/ 12 апреля 2019

Кажется, это произошло, когда вызывается onSaveInstanceState.

У устройств Android 8.1 и 9.0 есть эта проблема.

Как это решить?

Большое спасибо!

13404-10 02: 49: 44.606 16580 16580 E JavaBinder: !!! СБОЙ СДЕЛКИ БИНДЕРА !!! (размер посылки = 527472)

13504-10 02: 49: 44.606 16580 16580 W ActivityStopInfo: Статистика пакета:

13604-10 02: 49: 44.606 16580 16580 W ActivityStopInfo: android: viewHierarchyState [size = 2104]

13704-10 02: 49: 44.607 16580 16580 W ActivityStopInfo: android: просмотры [размер = 2000]

13804-10 02: 49: 44.620 16580 16580 W ActivityStopInfo: android: поддержка: фрагменты [size = 524484]

13904-10 02: 49: 44.620 16580 16580 W ActivityStopInfo: Статистика PersistableBundle:

14004-10 02: 49: 44.620 16580 16580 W ActivityStopInfo: [ноль]

14104-10 02: 49: 44.620 16580 16580 D AndroidRuntime: выключение виртуальной машины 142 --------- начало крушения

14304-10 02: 49: 44.621 16580 16580 E AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: main

14404-10 02: 49: 44.621 16580 16580 E AndroidRuntime: Процесс: com.cwj.hsing, PID: 16580

14504-10 02: 49: 44.621 16580 16580 E AndroidRuntime: java.lang.RuntimeException: android.os.TransactionTooLargeException: размер пакета данных 527472 байта

14604-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.app.servertransaction.PendingTransactionActions $ StopInfo.run (PendingTransactionActions.java:160)

14704-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.os.Handler.handleCallback (Handler.java:873)

14804-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.os.Handler.dispatchMessage (Handler.java:99)

14904-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.os.Looper.loop (Looper.java:280)

15004-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.app.ActivityThread.main (ActivityThread.java:6706)

15104-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at java.lang.reflect.Method.invoke (собственный метод)

15204-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:493)

15304-10 02: 49: 44.621 16580 16580 E AndroidRuntime: на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:858)

15404-10 02: 49: 44.621 16580 16580 E AndroidRuntime: вызвано: android.os.TransactionTooLargeException: размер пакета данных 527472 байта

15504-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.os.BinderProxy.transactNative (собственный метод)

15604-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.os.BinderProxy.transact (Binder.java:1127)

15704-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.app.IActivityManager $ Stub $ Proxy.activityStopped (IActivityManager.java:4011)

15804-10 02: 49: 44.621 16580 16580 E AndroidRuntime: at android.app.servertransaction.PendingTransactionActions $ StopInfo.run (PendingTransactionActions.java:144)

15904-10 02: 49: 44.621 16580 16580 E AndroidRuntime: ... еще 7

1 Ответ

0 голосов
/ 08 мая 2019

Нулевая транзакция будет в порядке! если вам не нужно сохранять bundleData, вы можете сделать это следующим образом!

 @Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(new Bundle());
}
...