Cast SDK は、Android、ウェブ、iOS 向けのデバイス検出を実行して、利用可能な Cast 対応デバイスのリストをユーザーに提供します。これにより、送信側アプリは受信デバイスに接続してキャストを開始できます。デバイスが検出されない場合、問題はアプリ(送信者または Cast 対応デバイス)、キャスト デバイス、またはネットワークにある可能性があります。
このドキュメントでは、デバイス検出の問題をトラブルシューティングする方法について説明します。たとえば、接続されているキャスト デバイスの一覧に Cast 対応デバイスが表示されない場合や、送信アプリを実行してもキャスト アイコンが表示されない、さらに悪いことには、検出プロセスにおける潜在的な要因と変数が非常に多いため、これらの手段が一つの原因をはっきり証明できないことがありますが、考えられる原因の切り分けに役立ちます。
デバイス検出の問題を調査する前に、次の条件を満たしていることを確認してください。
- 送信側のデバイスが、テストに使用できるキャストアプリを実行している。 Netflix アプリや YouTube アプリは特別な検出メカニズムを使用するため、検出のテストに使用しないでください。
- ウェブ レシーバー デバイスは公式の Google Cast デバイスです。Chromecast、Google Home、Google Nest Hub など。
- 送信側のデバイスで Wi-Fi が有効になっていて、動作している必要があります。
- 送信側デバイスと Cast 対応デバイスが同じ Wi-Fi ネットワークに接続されている必要があります。
また、Web Receiver アプリのデバッグについて詳しくは、デバッグをご覧ください。
問題についてさらにサポートが必要な場合は、デバッグログ、ping レスポンス データ、ネットワーク サービス データなど、利用可能なすべての情報を収集し、Google Cast サポートに記載されているいずれかのサポート オプションを利用してください。
送信元のアプリを確認する
- センダーと Cast 対応デバイスの両方を同じ WiFi ネットワークに接続します。
送信側アプリを再起動します。
- Android では、Android システム設定を使用してアプリを強制停止します。アプリを再起動します。
- iOS の場合は、ホームボタンをダブルクリックしてセンダーアプリを選択し、スワイプしてシャットダウンします。アプリを再起動します。
送信側のアプリでキャスト アイコンをタップすると、ネットワーク上のキャスト デバイスが表示されます。 Cast 対応デバイスがリストに表示されている(検出された)場合は、送信側アプリにまだ問題がある可能性があります。送信側アプリを監視し、送信側アプリがレシーバーを検出できなくなる状況に注目します。たとえば、アプリで何が起きているのかを確認します。接続が失われるまでの時間は、再起動を何度か繰り返しても変わらないか。
別のセンダーアプリ(Netflix や YouTube 以外)を起動し、キャスト アイコンをタップすると、ネットワーク上のキャスト デバイスが表示されます。
他のアプリは一貫してレシーバーを検出し、送信者アプリが検出していない場合、問題はセンダー アプリにあると考えられます。一方、すべてのアプリでレシーバーの検出に問題がある場合は、レシーバーまたはネットワークに問題がある可能性があります。
別のプラットフォームでセンダーアプリを実行します(可能な場合)。
他のプラットフォームで送信側アプリを実行するときも、検出の動作は同じですか。
送信側アプリとは異なるプラットフォームでアプリ(Netflix や YouTube 以外)を実行します。
センダーアプリが Android プラットフォーム上にある場合は別のアプリを実行しますが、iOS 上でも別のアプリを実行します。特定のプラットフォームのすべてのアプリに一貫して失敗するが、別のプラットフォームのアプリには失敗する場合は、プラットフォームに問題がある可能性があります。
デバイスを同期する
送信側デバイスと Cast 対応デバイスのシステム時刻に大きな差があると、センダーとレシーバー間の認証 handshake が失敗することがあります。10 分程度の差異があると、認証が失敗する可能性があります。
キャスト デバイスのシステム時刻は不変であり、デバイスがインターネットに接続されていれば、正しい時刻を維持できます。ほとんどの送信デバイス(スマートフォンなど)のシステム時刻は変更可能ですが、デバイスをインターネットに接続することで、自動的にシステム時刻を取得できるようにする必要があります。
センダーまたはレシーバーのシステム時刻が正しくない場合は、デバイスを再起動してインターネットに接続します。デバイスが正確な時刻を維持できない場合は、デバイスのベンダーにお問い合わせください。
デバイスに ping する
デバイスに ping するときは、レスポンス メッセージの内容をメモして、Google Cast サポートへの通信で報告できるようにします。
- センダーとレシーバーの両方を同じ Wi-Fi ネットワークに接続し、両方のデバイスが接続されていることを検証します。
Cast 対応デバイスの IP アドレスを確認します。
Google Home アプリを使用してキャスト デバイス(Android TV を除く)の IP アドレスを取得します。Android TV の場合、[設定] > [デバイス] > [ネットワーク] > [Wi-Fi] > [ネットワーク] > [ステータス情報] メニューから IP アドレスを取得します。
パソコンを Cast 対応デバイスと同じ Wi-Fi ネットワークに接続し、コマンドライン インターフェースを開きます。
キャスト デバイスに ping し、レスポンスをメモします。
ping <Cast-enabled device IP address>
マルチキャスト アドレスに ping してレスポンスをメモします。このテストは、Cast 対応デバイスの IP アドレスがあるかどうかにかかわらず実施できます。次のようにマルチキャスト IP アドレスに ping します。
ping 224.0.0.1
ping 239.255.255.250
ping 224.0.0.251
送信側デバイスの IP アドレスを確認します。 通常、この情報は [設定] メニューにあります。Android で、[設定] > [デバイス情報] > [ステータス] をタップします。
送信側デバイスに ping し、レスポンスをメモします。
ping <sender device IP address>
いずれかのデバイスに ping してもレスポンスが得られない場合は、ルーターを確認するをご覧ください。
ルーターを確認する
一部のネットワーク ルーターは他のルーターよりも Cast に優れており、Google は主要ブランドのほとんどをテストしています。次の手順でルーターの問題を特定できることがあります。
- ご利用のネットワークのルーターで [AP アイソレーション] をオフにします。
- 既知の問題や追加情報については、ルーターを確認してください。
インターネットを検索して、他のユーザーが Chromecast のルーターの問題を解決した方法をご覧ください。
ルーターのファームウェアを更新してください。
メーカーの取扱説明書をご覧ください。ルーターのファームウェアには、単純な更新で解決できるバグがある場合があります。
ネットワーク ルーターの電源を切ってから再起動します。
キャスト デバイスを再起動します。
Chromecast を再起動するには、USB ケーブルを取り外して交換します。同様に、他のキャスト デバイスの場合、デバイスの電源を入れてからオフにして再起動します。
トラフィックを確認する
ネットワーク上のブロードキャスト サービスを調べることで、Web Receiver がネットワークと正しく通信しているかどうかを確認できます。
- ウェブ レシーバー デバイスと同じネットワークに接続されているデバイスに、以下のいずれかのネットワーク サービス検査ユーティリティをインストールします。
ユーティリティを実行し、_googlecast._tcp.local サービス レコードを見つけます。
このレコードには、Web Receiver のデバイス名とモデル、サービスデータが記述されます。
- Google Cast サポートに連絡するためのレコード情報をコピーします。
次のようにネットワーク サービス検査ユーティリティをインストールします。
Apple OSX - Tildesoft から Bonjour Browser をインストール
Linux - avahi-discovery をインストールして、次のように実行します。
sudo apt-get install avahi-discover
sudo service avahi-daemon start
avahi-discover