2

これらの単純なコード行は私にを与えますTransactionTooLargeException。同じ関数の別の条件付きブランチに、完全に機能する別のダイアログがあります。私は完全に途方に暮れています。何か提案できますか?

ありがとうございました

AlertDialog.Builder b = new AlertDialog.Builder(this);              
b.setTitle(R.string.choose_winner);
AlertDialog dialog = b.create();
dialog.show();

これがログです。申し訳ありませんが、最初にその包含を省略しました。

11-08 19:20:12.455:E / AndroidRuntime(1431):致命的な例外:メイン

11-08 19:20:12.455:E / AndroidRuntime(1431):java.lang.RuntimeException:ウィンドウの追加に失敗しました

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewRootImpl.setView(ViewRootImpl.java:491)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.WindowManagerImpl.addView(WindowManagerImpl.java:301)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.WindowManagerImpl.addView(WindowManagerImpl.java:215)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.WindowManagerImpl $ CompatModeWrapper.addView(WindowManagerImpl.java:140)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.Window $ LocalWindowManager.addView(Window.java:537)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.app.Dialog.show(Dialog.java:278)で

11-08 19:20:12.455:E / AndroidRuntime(1431):com.sebmag.acquiroid.GameActivity.play(GameActivity.java:442)

11-08 19:20:12.455:E / AndroidRuntime(1431):com.sebmag.acquiroid.GameActivity $ PlayView.onTouch(GameActivity.java:126)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.View.dispatchTouchEvent(View.java:5536)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1957)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1726)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1957)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1726)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1957)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1726)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1957)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1726)

11-08 19:20:12.455:E / AndroidRuntime(1431):com.android.internal.policy.impl.PhoneWindow $ DecorView.superDispatchTouchEvent(PhoneWindow.java:1912)

11-08 19:20:12.455:E / AndroidRuntime(1431):com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1371)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.app.Activity.dispatchTouchEvent(Activity.java:2364)で

11-08 19:20:12.455:E / AndroidRuntime(1431):com.android.internal.policy.impl.PhoneWindow $ DecorView.dispatchTouchEvent(PhoneWindow.java:1860)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.View.dispatchPointerEvent(View.java:5721)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:2890)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2466)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewRootImpl.processInputEvents(ViewRootImpl.java:845)

11-08 19:20:12.455:E / AndroidRuntime(1431):android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2475)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.os.Handler.dispatchMessage(Handler.java:99)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.os.Looper.loop(Looper.java:137)で

11-08 19:20:12.455:E / AndroidRuntime(1431):android.app.ActivityThread.main(ActivityThread.java:4575)で

11-08 19:20:12.455:E / AndroidRuntime(1431):java.lang.reflect.Method.invokeNative(ネイティブメソッド)で

11-08 19:20:12.455:E / AndroidRuntime(1431):java.lang.reflect.Method.invoke(Method.java:511)で

11-08 19:20:12.455:E / AndroidRuntime(1431):com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:789)

11-08 19:20:12.455:E / AndroidRuntime(1431):com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)

11-08 19:20:12.455:E / AndroidRuntime(1431):dalvik.system.NativeStart.main(ネイティブメソッド)

11-08 19:20:12.455:E / AndroidRuntime(1431):原因:android.os.TransactionTooLargeException

11-08 19:20:12.455:E / AndroidRuntime(1431):android.os.BinderProxy.transact(ネイティブメソッド)

11-08 19:20:12.455: E/AndroidRuntime(1431): at android.view.IWindowSession$Stub$Proxy.add(IWindowSession.java:516)

11-08 19:20:12.455: E/AndroidRuntime(1431): at android.view.ViewRootImpl.setView(ViewRootImpl.java:481)

11-08 19:20:12.455: E/AndroidRuntime(1431): ... 33 more

11-08 19:20:12.650: E/AndroidRuntime(1431): Error reporting crash

11-08 19:20:12.650: E/AndroidRuntime(1431): android.os.DeadObjectException

11-08 19:20:12.650: E/AndroidRuntime(1431): at android.os.BinderProxy.transact(Native Method)

11-08 19:20:12.650: E/AndroidRuntime(1431): at android.app.ActivityManagerProxy.handleApplicationCrash(ActivityManagerNative.java:2867)

11-08 19:20:12.650: E/AndroidRuntime(1431): at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:72)

11-08 19:20:12.650: E/AndroidRuntime(1431): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)

11-08 19:20:12.650: E/AndroidRuntime(1431): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)

11-08 19:20:12.650: E/AndroidRuntime(1431): at dalvik.system.NativeStart.main(Native Method)

4

2 に答える 2

4

The problem was other than what I thought. Namely I was caught in an infinite while loop. Question closed, shame +1.

于 2012-11-13T15:22:58.310 に答える
1

I can see you solved your problem :) but let me write couple of lines for other lost souls having this problem I also had couple of day ago.

It turns out my problem was trying to move a large graph of objects between activities. There is a 1MB limit on data being transferred and the limit is even smaller in real life. I've solved the issue by reverting to good old java serialization instead of using Parcelable via Parceler library. More info in this blog post.

于 2015-03-25T01:21:17.390 に答える