2

Android でサービスとして実行されるアプリケーションを作成しようとしています。それと通信する必要がある他のアプリが配布されます。

これはサービスとして実装されており、実行中のクライアント アプリは、同じアプリ内にパッケージ化されている場合に正常に動作します。

ただし、http://developer.android.com/guide/developing/tools/aidl.htmlに従って、クライアントアプリケーション、特に行でこれを機能させるのに問題があります

「ServiceConnection.onServiceConnected() の実装では、IBinder インスタンス (サービスと呼ばれます) を受け取ります。YourInterfaceName.Stub.asInterface((IBinder)service) を呼び出して、返されたパラメーターを YourInterface 型にキャストします。」

アプリケーションは個別に配布されているため、YourInterfaceName にアクセスできず、それをクライアント アプリにコピーするのは間違いなく「間違った方法」のように感じます。

誰かが非常に役立つドキュメント/本/ソースコードへのポインターを提供できれば、ありがとう

(私の名前の皮肉を許してください、少し冗談でした)

4

3 に答える 3

2

本「Pro Android 2」には、AIDL に関する適切な例があります...

于 2010-12-06T01:44:58.230 に答える
0

アプリケーションが相互に通信するために正確に必要なものは何ですか?

データの場合は、ContentProviderを見ることができます。

を通じて情報を共有することもできますIntent.putExtra

于 2010-12-05T22:08:23.433 に答える
0

クライアント プロジェクトに Binder IPC のクライアント側を実行するコードの部分をコピーする (または同等の機能を含めるか、または同等の機能で書き直す) 必要があります。

于 2010-12-05T23:04:14.890 に答える