5

Chromecast レシーバー アプリケーションの自動システム テストを行う良い方法があるかどうか疑問に思っています。

アプリケーション URL を Chrome ブラウザで開いた場合、cast_receiver ライブラリは次の WebSocket 接続を見つけることができません。

ws://localhost:8008/v2/ipc

これはアプリと Chromecast ハードウェア間の通信を処理するため、Chromecast レシーバー アプリと通信できる Node.js Websocket サーバーのようなものを考えています。そのようなシステムはありますか、それとも Google がこの種のテスト用に何かをリリースする計画があるかどうか知っている人はいますか?

また、chromecast ブラウザーと chrome ブラウザーの違いに関連する他の問題はありますか? 私が理解しているように、chromecast ブラウザーは chrome のサブセットにすぎないため、動作するはずだと思います。

4

1 に答える 1

1

いいえ、これを行う簡単な方法はありません。

免責事項:これから提案することは何も試していません。また、Google は公的なものではないため、いつでも好きな方法でプロトコルを変更できるため、これはおそらくひどい考えです。

重大な免責事項: セクション 3.2 (開発者ポリシー) で「... スタンドアロン技術を開発することはできません... Google Cast レシーバーの機能を開発することはできません」と記載されているため、これを行うと ToS に違反する可能性があります。おそらく、IPC 機能を複製するスタンドアロンのテクノロジを作成することになるでしょう。しかし、私は知りません。私は弁護士ではありません。

これを行いたい場合は、Google Cast Receiver SDK のコピーを作成することをお勧めします (www.gstatic.com/cast/sdk/libs/receiver/2.0.0/cast_receiver.js (2015 年 4 月 28 日現在))。 )、送受信されているメッセージをログアウトするように変更します。

幸いなことに、関連するコードを見つけるのに役立つログ メッセージがあるようです。

受信メソッドには文字列 "Received message" があります。「a.message」が受信されていると思います。

送信メソッドには、「IPC message sent」という文字列があります。「a」が送信されていると思います。

コードのコピーをインストルメント化したら、レシーバー アプリが表示できる場所に公開する必要があります。次に、新しく改善された SDK を指すようにレシーバー アプリを編集する必要があります。テスト目的でのみ、公開されていないアプリでこれを行うようにしてください。

それが完了したら、メッセージをコードから取り出して、アクセスできるものにする方法を見つける必要があります。いくつかのオプションがあります。

  1. コードをさらにいじって、必要なデータを Chromecast からログアウトさせる方法を見つけます。
  2. 情報を配列に格納し、デバッガーを使用して読み取ります。
  3. 独自のソケット (または websocket) を開き、そのデータを制御するサーバーに送信します。

ここから、アプリを実行して操作し、送受信された IPC メッセージの完全な記録を取得できます。これを利用して、特定のメッセージをリッスンし、ログにあるものを吐き出す独自の Fake-IPC サーバーを作成できます。

于 2015-04-29T03:59:40.130 に答える