2017-05-28 91 views
0

我有一个TransactionTooLargeException当我关闭/最小化我的应用程序。我假设它是由于我的Bundle太大(3个JSONArray作为字符串),但如果有人能从我的错误跟踪中诊断出更多信息,那将是非常好的。TransactionTooLargeException当最小化应用程序

这就是:

05-28 17:17:25.994 9518-9518/com.adamtrudeauarcaro.godbuilder E/JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 551100) 
05-28 17:17:25.996 9518-9518/com.adamtrudeauarcaro.godbuilder D/AndroidRuntime: Shutting down VM 
05-28 17:17:25.998 9518-9518/com.adamtrudeauarcaro.godbuilder E/AndroidRuntime: FATAL EXCEPTION: main 
                       Process: com.package.godbuilder, PID: 9518 
                       java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 551100 bytes 
                        at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4211) 
                        at android.os.Handler.handleCallback(Handler.java:751) 
                        at android.os.Handler.dispatchMessage(Handler.java:95) 
                        at android.os.Looper.loop(Looper.java:154) 
                        at android.app.ActivityThread.main(ActivityThread.java:6688) 
                        at java.lang.reflect.Method.invoke(Native Method) 
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1468) 
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1358) 
                       Caused by: android.os.TransactionTooLargeException: data parcel size 551100 bytes 
                        at android.os.BinderProxy.transactNative(Native Method) 
                        at android.os.BinderProxy.transact(Binder.java:628) 
                        at android.app.ActivityManagerProxy.activityStopped(ActivityManagerNative.java:4132) 
                        at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4203) 
                        at android.os.Handler.handleCallback(Handler.java:751)  
                        at android.os.Handler.dispatchMessage(Handler.java:95)  
                        at android.os.Looper.loop(Looper.java:154)  
                        at android.app.ActivityThread.main(ActivityThread.java:6688)  
                        at java.lang.reflect.Method.invoke(Native Method)  
                        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1468)  
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1358)  
+0

我认为这来自'onSaveInstanceState()',虽然我很不确定。 – CommonsWare

+0

@CommonsWare我没有定义该方法,错误仍然可能是由隐式实现引起的? –

+0

如果你在EditText中有一些巨大的文本,也许。恕我直言,这是不可能的。 – CommonsWare

回答

4

从你的错误跟踪它并没有说,但我可以从经验告诉你,当然,出现这种情况时,你的包太大,它存储为保存实例状态。这意味着当您最小化应用程序时,它会尝试呼叫onSaveInstanceState,并且您的软件包存储的数据多于系统支持的数据。

+0

太棒了,我只是需要一些确认,这是改变我的设计之前的问题。谢谢! –

+0

没问题,你也可以在这篇文章中找到几乎允许的数量:https://stackoverflow.com/questions/12496700/maximum-length-of-intent-putextra-method-force-close – droidpl

相关问题