我從我住的應用程序之一看到相當多的錯誤報道,是造成此異常:android.os.TransactionTooLargeException拋出隨機
java.lang.RuntimeException: Adding window failed
at android.view.ViewRootImpl.setView(ViewRootImpl.java:513)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:259)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2852)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2250)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(NativeStart.java)
Caused by: android.os.TransactionTooLargeException
at android.os.BinderProxy.transact(Binder.java)
at android.view.IWindowSession$Stub$Proxy.addToDisplay(IWindowSession.java:683)
at android.view.ViewRootImpl.setView(ViewRootImpl.java:502)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:259)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2852)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2250)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(NativeStart.java)
從我讀過here,我相信原因可能會下降到過大Parcelable
我正在添加到Intent
演員。我目前正在將一個對象從一個活動傳遞給另一個活動,在該對象writeToParcel
方法我保存一個JSON字符串,其大小範圍從1000 - 1500個字符的長度。這可能是原因嗎?
在測試應用程序時,我有時會注意到UI滯後,好像內存不足,凍結然後強制關閉。
使用靜態變量將對象從一個Activity傳遞到另一個會更好還是完全可以由其他引起?
感謝
我覺得極限是1Mb –
@Arash -Oh! - 我想你說得對 - 根據這個來源:http://developer.android.com/reference/android/os/TransactionTooLargeException.html – Saeid
好的答案,但下次引用你複製1:1的文本。 – JacksOnF1re