2011-12-03 11 views
2

ドラッグでAndroidに入った例外があります。 Googleはこの例外について知りません。Android、神秘的なシステム例外を捕まえる方法

質問: 任意のアイデア、この例外をキャッチするにはどうすればよいですか?リストされたクラスはすべて、フレームワークのネイティブクラスであるため、システムの内部で何かが隠れているようです。

Window Session Crash 
java.lang.IllegalStateException: reportDropResult() by non-recipient 
    at com.android.server.wm.Session.reportDropResult(Session.java:307) 
    at android.view.IWindowSession$Stub.onTransact(IWindowSession.java:369) 
    at com.android.server.wm.Session.onTransact(Session.java:111) 
    at android.os.Binder.execTransact(Binder.java:320) 
    at dalvik.system.NativeStart.run(Native Method) 
FATAL EXCEPTION: main 
java.lang.IllegalStateException: reportDropResult() by non-recipient 
    at android.os.Parcel.readException(Parcel.java:1329) 
    at android.os.Parcel.readException(Parcel.java:1275) 
    at android.view.IWindowSession$Stub$Proxy.reportDropResult(IWindowSession.java:900) 
    at android.view.ViewRoot.handleDragEvent(ViewRoot.java:3015) 
    at android.view.ViewRoot.handleMessage(ViewRoot.java:2164) 
    at android.os.Handler.dispatchMessage(Handler.java:99) 
    at android.os.Looper.loop(Looper.java:132) 
    at android.app.ActivityThread.main(ActivityThread.java:4025) 
    at java.lang.reflect.Method.invokeNative(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:491) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 
    at dalvik.system.NativeStart.main(Native Method) 
+0

私はそれを捕まえている(とそれを飲み込んでいますか?)ベストソリューションです...これは恐らくコードのバグが原因で、それを見つけて修正する方がいいでしょう。申し訳ありませんが、私はそのコードのバージョンに慣れていません:( – Guillaume

+0

この例外は、私のDragEventがすべて処理されたときに発生します。デバッガは、処理された 'DragEvents'がとにかくツリーを見ると、ルートビューのいくつかが例外を引き起こしているようです。私のコードには、起こっていることと共通点がありません。 – Skip

答えて

3

私はドラッグでAndroidに入った例外が、あります。 Googleはこの例外について知りません。

私は、Android 2.3のソースでreportDropResult()を見つけることができないので、私はこれはハニカムで導入された新しいドラッグアンドドロップフレームワークからのものであることを推測しています。

任意のアイデア、この例外をキャッチするにはどうすればよいですか?

例外をキャッチするために何かをオーバーライドすることはできません。未処理の例外をキャッチするには、ThreadsetDefaultUncaughtExceptionHandler()を使用します。

関連する問題