2016-05-15 10 views
0

私は、CastCompanionLibraryライブラリを使用してインタラクションを使用して動画のgoogleキャストをサポートするためのAndroidを作成しています。 ビデオのVideoCastManagerを使用し、メッセージ(データ)の交換の一部としてDataManagerCastを使用します。 特定のセッションに接続できるコントロールを実装したいと思います。私の考えは、最初の送信者が、「セッションの所有者」であり、他の送信者が接続する許可を求める必要があることです。接続プロセスのために、受信者と送信者のセッション所有者の間の通信に名前空間を作成しました。 送信者が承認されていない場合は、切断する必要があります。 私はレシーバーのリファレンスを見て、受信者へのメソッドを探して特定のセンデを切断しましたが、それでも失敗します。このアイデアを実装することが可能かどうかは誰にも分かりますか?Disconnect sender unauthorized

答えて

1

まず、なぜDataCastManagerを使用していますか? VideoCastManagerはデータチャネルを追加することができます。これは通信する必要があるため、VideoCastManagerだけを使用します。

限りメモリが機能として、受信機は、個々の送信者を切断することはできませんので、あなたのアプローチに代わるものは、次のようになります。

  • 各送信者、受信機に接続した後、自身を登録するために受信機にメッセージを送信します。
  • Receiverは、接続されているデバイスの数を調べます。接続されているデバイスの数が最初のデバイスの場合、所有者は送信者にそれが所有者であることを知らせるメッセージを返信すると見なします。それが最初のものでない場合、それはその送信者に、それが所有者から許可を得る必要があることを知らせるメッセージを返信する(したがって、新しい送信者は許可を待つべきであることを知る)。同時に、それはオーナーに2番目のものを許可する許可を求めるメッセージを送信します。
  • オーナーは、新しい送信者が接続することを許可または禁止するメッセージを受信者に送り返します。受信者は、その要求が許可されたかどうかを知らせるメッセージを新しい送信者に送信します。
  • 許可が与えられていれば、送信者のコードはユーザーがアプリ内を進むことを許可します。それが許可されていない場合、あなたの送信アプリのロジックは、ユーザーが先に進まないようにするか、送信者を切断するか、ユーザーができることを制限するだけです。
+0

私の疑いを晴らすためのアリNaddafありがとうございます。 –