2016-06-13 4 views
0

私はAllJoynにはかなり新しく、Java APIを使用してAllJoyn互換アプリケーションを開発しようとしています。私はすべてのサンプルのJavaとAndroid Appを使い、問題なく実行できます。しかし、すべてのサンプルで、クライアント/サービスモデルに従っていることがわかりました。コンパイル時に、クライアントはサービスが実装するインタフェースについて知る必要があります。以下は、デモコードからのスナップショットです。AllJoynを自動検出して対話する

// From ObserverSample for Android 
ProxyBusObject obj = (ProxyBusObject) msg.obj; 
Door door = obj.getInterface(Door.class); 

// From JavaSDKDocAboutClient 
mProxyObj = mBus.getProxyBusObject (busName, "/example/path". sessionId.value, new Class<?>[] { SampleInterface.class}); 

私は、特定のプロパティ、BusMethods、およびBusSignalsを持つサービスを開発しようとしています。私はこのサービスを、第三者のAllJoynアプリケーション(例としてAllJoynダッシュボードアプリケーション)から検出し、制御可能にしたいと考えています。

これを達成する方法を見つけることができません。私が見たどこにいても、私は自分のサービスに使用するインターフェイスがあるように見えます。クライアントは、自分のサービスをサポートするために既にそれについて知っている必要があります。スケーリングの観点から、これはどのように可能ですか?多くのサービスが現在存在しているか、将来登場する可能性がありますが、そのインタフェースについて既に知っていることは実現できません。

誰かがこのようなサービスの開発に関する詳細情報を見つけることができるリソースを教えていただけると助かります。

ありがとうございます。

答えて

0

クライアントJavaアプリケーションにサービスインタフェースに関する情報がない場合は、Java部分と通信してalljoynイントロスペクションを活用するネイティブC++ライブラリを作成する必要があります。 C++を使用すると、Javaのようにハードコードされていなくても、プログラムでメソッドを呼び出したり、プロパティを取得したりすることができます。

は、詳細情報については、/ alljoyn_core /サンプルhttps://git.allseenalliance.org/cgit/core/alljoyn.git/snapshot/alljoyn-16.04.zip

+0

右方向に向いためにあなたのリノありがとうにおけるeventactionサンプルを見てみましょう。 C++で検出可能なアプリケーションを開発することができ、controlpanelサンプルアプリケーションは非常に有用なリソースでした。 –

関連する問題