2012-02-02 12 views
0

リモートサービスは別のプロセスにあり、このリモートサービスでは、たとえば、何か問題があった場合にカスタムランタイム例外をスローするメソッドを呼び出しています。私はその例外をUIで処理したい。いくつかのプロセスで例外をスローする

私が理解するように、あるプロセスから別のプロセスに例外をスローすることはできません。 この状況の解決策は何ですか?

UPDATED

: 私は取得しています:

E/JavaBinder(1544): *** Uncaught remote exception! (Exceptions are not yet supported across processes.) 
+0

問題の詳細を取得するには、logcatのコードも表示します。 – Arslan

+1

問題は、Parcelableインターフェイスを実装できないCustomRuntimeExceptionをスローすることです。 01-01 00:49:24.997:W/System.err(1486):java.lang.NullPointerException 01-01 00:49 :25.017:W/System.err(1486):\t android.os.Parcel.readException(Parcel.java:1240) – user1074896

答えて

1

私はあなたができると思うが、それはそう簡単ではありません。これを行うには、サービスとアクティビティ間のIPC通信を手動で実現する必要があります。私。 IInterfaceを拡張するインタフェースを作成する必要があります。その後、このインターフェイスのスタブとプロキシのクラスを手動で実現する必要があります。また、このクラスでは、このプロキシとスタブクラス間の通信を手動で実現する必要があります(ここでは、プロセス間で例外を送信できます)。

あなたのケースでは整数を送信する方が簡単だと思います。アクティビティでは、この整数値をチェックするだけです。定義済みの値と等しい場合は、カスタム実行時例外をスローすることができます。

+0

これを行うことはできますか: 1)ハンドラから? 2)コールバック経由ですか? – user1074896

+0

単純な整数の受け渡しについては、たとえばコールバックを使用して行うことができます。 – Yury

関連する問題