我读了很多关于这个错误的帖子,其中大部分与管理图像有关。
但是当我停止应用程序(放在后台)时,我会得到这个错误,所以应该与内存中的数据有关……
我的片段和活动的onStop()方法中没有做任何事情。
我已经检查了onSaveInstanceState(final Bundle outState)方法,bundle为空……?
我有5个对象ArrayList,并且通过测试我发现,如果我没有最大的一个,就不会抛出错误。
我的应用程序将拥有比现在更多的数据,所以这是个问题。
有人能解释一下我为什么会遇到这个问题以及我如何处理吗?
错误:
01-25 13:51:09.272 4940-4940/com.cathedralsw.schoolteacher
E/JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 539984)
--------- beginning of crash
01-25 13:51:09.281 4940-4940/com.cathedralsw.schoolteacher E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.cathedralsw.schoolteacher, PID: 4940
java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 539984 bytes
at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4039)
at android.os.Handler.handleCallback(Handler.java:761)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6595)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
Caused by: android.os.TransactionTooLargeException: data parcel size 539984 bytes
at android.os.BinderProxy.transactNative(Native Method)
at android.os.BinderProxy.transact(Binder.java:617)
at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:3632)
at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4031)
at android.os.Handler.handleCallback(Handler.java:761)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6595)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
01-25 13:51:09.286 1795-5775/? E/ReportTools: This is not beta user build