Android スマホを Windows PC の Chrome DevTools などから USB デバッグしようとしたとき、
- 開発者向けオプションを有効にした
- USB デバッグを ON にした
- USB ケーブルで PC と接続した
- なのに「USB デバッグを許可しますか?」という RSA 承認ダイアログが出ない
chrome://inspect/#devicesでも認証待ちになる
ということがあります。
私も Windows PC と Google Pixel 8 Pro を接続した際に、USB デバッグを ON にしているにもかかわらず、スマホ側には「USB デバッグが接続されました。無効にするにはタップしてください」という案内しか表示されず、何度やっても RSA 承認ダイアログが表示されませんでした。
私の環境では、Android SDK Platform-Tools を PC に入れ、adb devices を再度実行したところ、そこで初めて Pixel 側に RSA 承認ダイアログが表示されました。
なお、ここでいう RSA は、PC と Android 端末の間で USB デバッグを許可する相手を確認するために使われる公開鍵暗号の仕組みです。初めて接続する PC では、Android 側に RSA キーのフィンガープリントを確認するダイアログが表示されます。
また、adb devices を実行しても端末の識別番号が表示されない場合は、USB 接続や Windows 側の ADB 用 USB ドライバに問題がある可能性があります。
Google は、Windows で Google 製端末を ADB デバッグする場合に使用するドライバとして Google USB Driver を提供しています。
この記事では、RSA 承認ダイアログが表示されない原因の切り分けから、Platform-Tools、ADB、RSA 認証、USB Driver、Chrome DevTools での実機確認まで順番に説明します。
STEP1:問題を切り分ける
Android ChromeをPCからデバッグする基本的な接続手順をまだ行っていない場合は、先にこちらの記事をご覧ください。
Android Chrome を PC からデバッグする方法
Android 端末 を USB 接続した PC で chrome://inspect/#devices を開いたときに、「Remote Target」欄に Offline、Pending authentication(認証待ち)と表示されていれば、PC の Chrome は Android 端末の検出自体はできています。
これは、検出はできているが USB デバッグの認証が完了していないという状態です。
本来なら、ここでスマホ側に「このパソコンからのUSBデバッグを許可しますか?」と RSA 承認ダイアログが出てそれで承認できるはずなのですが、ダイアログが表示されない場合は次以降の STEP で ADB を実際に動かします。
なお、「USB デバッグが接続されました。無効にするにはタップしてください」という通知はずっと出ていましたが、これはその内容の通り USB デバッグを無効にするものなので、タップしないでください。
もし、 Offline、Pending authentication すらも表示されない場合は、RSA 承認ダイアログうんぬんより前の段階で端末を検出できていない可能性があります。 このケースについては後ほど対処法を紹介します。
STEP2:Android SDK Platform-Tools をインストールする
ADB は Android SDK Platform-Tools に含まれています。
Android Studio を丸ごとインストールしなくても、Platform-Tools だけを Google 公式からダウンロードできます。
私の PC は Windows なので、Windows版の ZIP ファイルをダウンロードして展開しました。
STEP3:Platform-Tools フォルダでターミナルを開く
展開した platform-tools フォルダを開き、フォルダパスが表示されているところに cmd と入力して Enter を押すと、コマンドプロンプトが開きます。
PowerShell でもかまいません。
STEP4:adb devices を実行する
スマホを USB 接続し、スマホの画面ロックを解除した状態で adb devices を実行します。
PowerShell の場合、「adb が見つからない」などのエラーになった時は .\adb.exe devices を実行するといけると思います。
初めて adb devices をしたときは、下記のように表示されることがあります。
XXXXXXXXXXXX unauthorized
unauthorized は、PC から端末自体は見えているものの、Android 側で RSA 認証がまだ完了していない状態です。
この状態になったらスマホ側を確認してください。
私の Pixel では、adb devices を実行したタイミングで初めて「このパソコンからのUSBデバッグを許可しますか?」という RSA 承認ダイアログが表示されました。
必要であれば「このパソコンからの USB デバッグを常に許可する」にチェックを入れ、「許可」をタップします。
その後、もう一度 adb devices を実行します。
正常に接続できれば、
XXXXXXXXXXXX device
のように表示されます。
device になれば、無事 ADB 接続は完了です。
RSA 承認ダイアログを間違えて閉じてしまった場合
RSA 承認ダイアログを閉じてしまった場合は、下記の手順で ADB サーバーを再起動します。
adb kill-serverを実行adb start-serverを実行adb devicesを実行
私の環境では、これで RSA 承認ダイアログが再表示されました。
それでも出ない場合は、Androidの「開発者向けオプション」にある「USB デバッグの許可を取り消す」を実行してから、USB ケーブルを接続し直して再度試します。
adb devices で offline と表示される場合
まれに adb devices を実行した際、XXXXXXXXXXXX offline と表示されることがあります。
これは、ADB から端末自体は認識できているものの、正常に通信できていない状態です。
まずは、adb kill-server → adb start-server → adb devices の順に実行して、ADB サーバーを再起動します。
それでも offline となる場合は、下記を試してください。
- Android 側で USB デバッグが ON になっているか
- スマホの画面ロックが解除されているか
- USB ケーブルがデータ通信に対応しているか
- USB ケーブルを一度抜き差しする
- PC の別の USB ポートでも試す
device と表示されれば、正常に接続できています。
adb devices に端末自体が表示されない場合
adb devices を実行しても、List of devices attached と表示されるだけで、その下に端末の識別番号が何も表示されない場合があります。
これは先ほどの offline とは異なり、ADB が USB 接続した Android 端末自体を検出できていない状態です。
まずは、上記の「adb devices で offline と表示される場合」と同じことを試してください。
それでも端末が表示されない場合は、Windows 側で ADB 用 USB ドライバが正しく適用されているか確認します。
Windows の ADB 用 USB ドライバを確認する
Windows で adb devices に Android 端末が表示されない場合は、端末に対応した ADB 用 USB ドライバが正しく適用されているか確認します。
使用するドライバは端末によって異なります。
- Pixel などの Google 製端末:Google USB Driver
- その他の Android 端末:各メーカーが提供する OEM USB ドライバ
Google 公式でも、Windows で Google 製の端末を ADB デバッグする場合は Google USB Driver、それ以外の端末では各メーカーが提供するドライバを使用するよう案内されています。
すでに適切なドライバが Windows 側で自動的に適用されている場合は、自分で手動インストールする必要はありません。
私の Pixel も、Google USB Driver を自分で手動インストールすることなく adb devices で認識されました。
そのため、ここからの確認は adb devices に端末が表示されない場合のトラブルシューティング として行います。
デバイスマネージャーで確認する
Android 端末を PC に USB 接続した状態で、Windows の「デバイス マネージャー」を開きます。
端末は環境によって「Android Device」「Android Phone」「ポータブル デバイス」「その他のデバイス」などに表示されます。
ADB 用ドライバが正常に適用されている場合は、「Android Composite ADB Interface」などの名称で表示されることがあります。
一方、端末に黄色い「!」が付いている、「不明なデバイス」になっている、Android 端末は表示されているものの ADB Interface が見当たらない、といった場合はドライバが正しく適用されていない可能性があります。
端末に対応した USB ドライバを入手する
Pixel などの Google 製端末では Google USB Driver を使用します。Google USB Driver は Google 公式から ZIP ファイルをダウンロードできるほか、Android Studio の「Tools」→「SDK Manager」→「SDK Tools」からも入手できます。
Google 製以外の Android 端末では、端末メーカーが提供する OEM USB ドライバを確認します。
デバイスマネージャーからドライバを適用する
対応する USB ドライバを用意したら、デバイスマネージャーで該当する Android 端末を右クリックし、「ドライバーの更新」を選択します。
続いて「コンピューターを参照してドライバーを検索」を選び、用意した USB ドライバのフォルダを指定します。
ドライバを適用したら Android 端末を一度抜き差しし、adb kill-server → adb start-server → adb devices の順に実行して再確認します。
STEP5:ADB 接続ができたら Chrome DevTools で実機を確認する
adb devices を実行し、XXXXXXXXXXXX device のように表示されれば、ADB 接続と RSA 認証は完了しています。
PC の chrome://inspect/#devices に戻り、Android 側の Chrome で開いているページの inspect から実機デバッグを開始できます。
Chrome DevTools を使った Android 実機の詳しいデバッグ手順は、下記の記事で紹介しています。
Android Chrome を PC からデバッグする方法|Windows・USB接続
私が実際にハマった流れ
- Pixel 8 Pro で開発者向けオプションを有効化
- USB デバッグを ON
- Windows PC と USB 接続
- RSA 承認ダイアログが出ない
chrome://inspect/#devicesではOffline / Pending authenticationと表示- スマホ側には「無効にするには…」という案内のみ表示される
- Android SDK Platform-Tools を導入
adb devicesを実行- Pixel 8 Pro に RSA 承認ダイアログが表示
- RSA 承認を許可
- 再度 adb devices を実行し、device になったことを確認
chrome://inspect/#devicesからinspectを開く
さらに一度 RSA ダイアログを閉じてしまったときは、adb kill-server → adb start-server で再表示させることができました。
つまり、「RSA 承認ダイアログが出ない=スマホ側だけの問題」とは限りません。
PC 側の ADB から実際に認証処理が始まっているかを確認することが重要です。
まとめ
Android の USB デバッグで RSA 承認ダイアログが出ない場合は、USB デバッグを ON にしただけで待ち続けるのではなく、PC 側で ADB を起動してみましょう。
まず Platform-Tools を導入し、adb devices を実行します。
端末が unauthorized と表示されれば、ADB からスマホ端末までは到達しています。
一方、adb devices に端末情報そのものが表示されない場合は、USB 接続、ケーブル、USB ポート、Windows 側のドライバを確認しましょう。
Windows + Pixel 等の Google 端末の場合は、Google USB Driver が必要です。ただし、すでに適切なドライバが導入・適用されている環境では、あらためて手動でインストールする必要はありません。
USB デバッグは、「Androidの設定 → USB接続 → Windows ドライバ → ADB → RSA 認証」という複数の段階があるため、adb devices で確認することで、原因を絞り込みやすくなります。
参考
- Android Debug Bridge(ADB)公式ドキュメント
https://developer.android.com/tools/adb - SDK Platform-Tools公式ページ
https://developer.android.com/tools/releases/platform-tools - Google USB Driver公式ページ
https://developer.android.com/studio/run/win-usb - OEM USB ドライバ公式ページ https://developer.android.com/studio/run/oem-usb
- Chrome DevToolsでAndroid端末をリモートデバッグする方法
https://developer.chrome.com/docs/devtools/remote-debugging/