Androidを上級レベルで扱ったり、スマートフォンをいじくり回すのが好きな人なら、遅かれ早かれADBに出会うことになるでしょう。このコマンドラインツールは、非常に詳細なシステム制御を可能にしますが、従来は典型的な USBケーブルとUSBデバッグが有効Android 11 以降、これらすべてが変わりました。今では、ADB を完全にワイヤレスで使用できるようになり、電話を抜き差しする必要がなくなり、より便利になりました。
新しいワイヤレス浄化システムでは、 QRコードまたはPINコードによる安全なWi-Fiペアリングこのガイドは、Android Studio とコマンド ラインの両方で使用できるように設計されており、ADB の仕組み、Android 11 以降のワイヤレス モードを最大限に活用する方法 (自動化のコツを含む)、古いバージョンの Android や Chromebook などの特殊なデバイスを使用する場合の代替手段について詳しく説明します。
ADB とは何ですか? Wi-Fi 経由で使用する価値があるのはなぜですか?
Android デバッグブリッジ、または ADBは通信チャネルを作成するコンソールツールです コンピューターとAndroidデバイス間の通信です。このチャネルでは、通常のシステムインターフェースでは提供されない高度な操作が可能になります。例えば、アプリ(プリインストールアプリを含む)の高度なインストールとアンインストール、デバイスのUnixシェルへのアクセス、ファイルのコピー、スクリーンショットや動画のキャプチャ、システムコマンド、テストの自動化などです。
伝統的に、このコミュニケーションは 「USBデバッグ」オプションを使用したUSB 開発者向けオプション内にあります。典型的なワークフローは、ケーブルを接続し、モバイルデバイスでPCを認証し、ディレクトリからコマンドを起動することです。 platform-tools PCで接続すれば完了です。問題は、この方法では携帯電話を物理的に近くに置く必要があり、ケーブルや コンピュータ上のAndroidデバイスドライバー ポートも少なく、複数のデバイスで作業する場合や移動する必要がある場合には非常に不便です。
Android 11以降のバージョンでは、 安全なペアリングプロセスを備えたWi-Fi経由のADB利便性が向上するだけでなく、USBドライバー、ポートの不具合、あるいはUSB経由のADBをサポートしていないChromebookなど、多くの問題を回避できます。また、TaskerやTermuxなどのツールを使えば、スマートフォンの起動時にワイヤレスADBを自動で有効化することも可能になります。
開発者オプションとワイヤレスデバッグを有効にするにはどうすればいいですか?
ケーブルまたはWi-FiでADB経由で接続する前に、 Androidデバイスの開発者向けオプションAndroid 11以降では、手順は通常のとおりです。 設定>電話について (o デバイス情報)セクションを見つけます ビルド番号 o バージョン次のようなメッセージが表示されるまで繰り返しタップします。 「あなたは今、開発者です」より詳しい説明が必要な場合は、 Androidで開発者モードを有効にして使いこなす方法.
これらのオプションを有効にすると、メイン設定メニューの内部検索ボックスを使用して検索できるようになります。 「開発者向けオプション」 直接入力してください。そのセクションには、この問題の鍵となる2つの情報が記載されています。 USBデバッグ Android 11以降では、新しい ワイヤレスデバッグこの最後のものは、ケーブルに依存せずに Wi-Fi 経由で ADB を使用するためにアクティブ化する必要があるものです。
ワイヤレス デバッグを初めて有効にすると、Android ではその使用を確認するボックスが表示されます。 現在のWi-Fiネットワークを許可されたネットワークとして デバッグするには、チェックボックスをオンにしてください 「このネットワークでは常に許可する」 そして押す 許すデバイスへの深いアクセス権を持つコマンドはそのチャネルを通じて送信されるため、信頼できるネットワークを使用することをお勧めします。
Android Studio を使用した Android 11 以降のワイヤレス ADB(QR コードまたは PIN コード)
Android Studioを使用する場合、Bumblebeeバージョン以降では、端末に触れることなくWi-Fiペアリングを実行できる統合ウィザードが利用できます。このシステムは QRコードまたはPINコードによる簡単なペアリング Android 11 以降を搭載したデバイスでのみ動作します。
パソコンでAndroid Studioを開き、デバイスマネージャーを探します。通常は 物理デバイスビューのデバイスマネージャー中には、 Wi-Fiを使用してペアリングする または同様のものをタップします。タップすると、2つのタブを含むポップアップウィンドウが開きます。1つはQRコードによるペアリング用(QRコードを使ってペアリングする) と数値コードで実行するもの (ペアリングコードを使用してペアリングする).
QRコードタブでは、 Android Studioで生成されたQRコード別のスキャナーで検査すると、IDEがデバッグトンネルを確立するために使用するWi-Fi接続プロファイルが含まれていることがわかります。スキャナーやサードパーティ製アプリケーションではなく、Android独自のワイヤレスデバッグストリームからのみスキャンすることが重要です。
モバイル端末で開発者向けオプションを有効にし、 開発者メニュー内の「ワイヤレスデバッグ」USBデバッグを有効にする必要はありません。そこにペアリングオプションが表示されます。QR方式の場合は、 「QRコードでデバイスをリンク」 PCのAndroid Studio画面に表示されているコードにカメラを向けてください。ペアリングプロセスは数秒で完了し、デバイスがペアリング済みとして登録されます。
QRコードのスキャンに問題がある場合は、数値コードタブをご利用ください。Android Studioで、 「ペアリングコードを使用してペアリング」を選択し、ペアリングボタンを押します6桁のコードを入力するためのダイアログボックスが開きます。モバイルデバイスの同じワイヤレスデバッグ画面で、 「同期コードとリンク」 システムに表示された番号とポート番号をメモし、Android Studioのボックスに入力してください。確認後、QRコードで確認したのと同じようにデバイスがペアリングされます。
そこからモバイルが利用可能になります Android Studio のターミナルタブからアプリを起動し、デバッグし、ADB を使用する またはシステムコンソールから、リモートコントロールの場合は Windowsからscrcpyを使用する Androidを操作するには、内蔵端末からコマンドが認識されない場合は adbバイナリが含まれているディレクトリにいることを確認してください。通常は %LOCALAPPDATA%\Android\SDK\platform-tools Windows の場合は 、macOS および Linux の場合は同等のものです。
Android 11 以降でコマンドラインを使用して Wi-Fi 経由で接続する

Android 11では、Android Studioを開かずに、コンソールからのみワイヤレスデバッグを使用することもできます。これを行うには、 モバイルでワイヤレスデバッグが有効同じオプション画面に入り、メニューを使用します 「同期コードでデバイスをリンクする」そこに IP アドレス、ポート、一時的なペアリング コードが表示されます。
PCで、以下のディレクトリにあるターミナルを開きます。 Android SDK プラットフォーム ツール (platform-tools フォルダ) 次のようなコマンドを実行します。
adb pair IP_DEL_DISPOSITIVO:PUERTO
自分の adb 次に、モバイル画面に表示される6桁のペアリングコードの入力を求められます。コードを入力すると、問題なくペアリングが記録されます。この手順で、ワークステーションとデバイスが安全に接続されます。
ペアリングが完了すると、次のものに直接接続できます。
adb connect IP_DEL_DISPOSITIVO:PUERTO
多くの場合、ペアリング後、mDNSのおかげで、ADBサーバー自体は リンクされたデバイスを自動的に検出します IPとポートを再入力する必要はありませんが、ネットワークがmDNSをうまく処理できない場合は、 adb connect ip:puerto それは信頼できる選択肢です。
その瞬間から、 Wi-Fi経由のすべてのクラシックADBコマンド: adb devices デバイスのリストを表示するには、 adb install APKをインストールするには、 adb shell 殻に入るには、 adb pull/push ファイルを転送したり、 screencap y screenrecord スクリーンショットやスクリーン録画の方法についての詳しい情報は コンピュータから携帯電話を制御する、 チェックアウト PCからモバイルを制御する.
Android 11 なしのワイヤレス ADB: 初期 USB セットアップ後の Wi-Fi 接続
デバイスがAndroid 10以前のバージョンを使用している場合(または11以降と互換性のある方法が必要な場合)、ADBを使用する従来のスキームを使用できます。 一度USB経由で設定し、その後はWi-Fi経由で使用します。このフローは最新バージョンでも引き続きサポートされていますが、Android 11 以降では新しいペアリング システムの方が安全で便利です。
従来の手順は、携帯電話をUSB経由でPCに接続し、 USBデバッグが有効になっており、コマンド adb devices それを検出する として デバイス次に、ターミナルから次のコマンドを実行します。
adb tcpip 5555
このコマンドは、携帯電話のADBデーモンを再起動し、TCP/IP経由でポート5555をリッスンするようになります。この時点でUSBケーブルを取り外しても構いません。
次のステップは、 ローカルネットワーク内のデバイスのIPアドレス標準的なAndroidスマートフォンでは、 設定 > 端末情報 > 端末の状態 > IPアドレス通常はこのような形式になります 192.168.1.x入手したら、PC で次のコマンドを実行します。
adb connect 192.168.1.X:5555
ポートを指定しない場合は、 adb デフォルトでは5555を使用します。すべてが正しく、ネットワークファイアウォールがポートをブロックしていない場合は、デバイスは応答し、 adb devices 次のように識別されます 「デバイス」状態におけるIPアドレスとポート.
より厳格なファイアウォールとの互換性が必要な場合は、同じパターンを他のポートにも適用できます。重要なのは、ネットワークとデバイスが、 ADBポート(デフォルト、5555) モバイル デバイスとワークステーションの両方が同じネットワークまたはセグメント上にあることを確認します。
イーサネット経由のADBの使用とChromebookのような特殊なケース
Wi-Fiネットワークが厳しく管理されている環境やセキュリティ制限がある環境では、代わりに 物理ケーブルを使用したイーサネット経由のADB デバイスを開発チームと同じネットワークに接続することで実現します。概念的にはWi-Fi TCP/IPモードと同じですが、ネットワークインターフェースはWi-Fiではなく有線です。
ChromeOSを搭載していない通常のAndroid端末では、従来のWi-Fiの場合と同様に、 adb tcpip 5555 最初のUSB接続後電話がそのポートをリッスンするようになったら、USB ケーブルを外し、イーサネット ネットワーク ケーブルとネットワークによって割り当てられた IP アドレスのみを使用して作業できます。
Chromebookの場合、多くの機種がUSB経由のADBをサポートしていないため、Wi-Fiかイーサネットしか選択肢がありません。典型的なイーサネットのフローは以下のようになります。 開発マシンとChromebookに同じ範囲内のIPを割り当てる (例えば、PCの場合は192.168.1.3、Chromebookの場合は192.168.1.2)などのツールを使用して、 ifconfig またはシステムのネットワーク構成。その後、PC上でプログラムが実行されます。 adb connect 192.168.1.2:5555 残りは他の ADB TCP/IP 接続と同じように動作します。
WindowsのシステムパスでADBを構成する
毎回手動でフォルダーに移動する必要がある場合、コンソールから ADB を継続的に操作するのは少し面倒です。 platform-tools コマンドを起動できるようにするため理想的には、このフォルダーを環境変数に追加する必要があります。 パス Windowsの adb どのディレクトリからも認識可能。
これを行うには、Windowsの検索バーを開いて次のように入力します。 「システムの詳細設定を表示」開いたウィンドウでタブに移動します 詳細オプション をクリックします 環境変数ブロックの システム変数 入り口を見つける パス そしてクリック 編集.
パスエディタ内で、 新しいです そして、それが保存されているフォルダへのフルパスを入力します。 「platform-tools」(例:C:\Android\sdk\platform-tools)すべてのウィンドウで「OK」をクリックして確定します。この時点から、任意のコマンドプロンプトまたはPowerShellウィンドウを開いて実行できます。 adb 現在のディレクトリを気にせず直接実行できます。
ADB コマンドと高度な機能 (概要)
無線接続以外にも、ADBは 3つのコンポーネントで構成されるクライアントサーバーアーキテクチャ: クライアント(ツール adb PC上で実行する)デーモン adbd 各Androidデバイス上で実行されるアプリケーションと、それらの間の通信を調整するサーバーです。サーバーはローカルポート5037をリッスンし、エミュレータや物理デバイスとの接続を維持し、ポート範囲またはIPアドレスでそれらを検出します。
とともに adb devices -l 接続されているデバイスを、より詳細な情報とともに一覧表示できます。各デバイスには シリアル番号、ステータス(オフライン、デバイスあり、またはデバイスなし) と説明を入力します。複数のデバイスで作業する場合は、 adb -s SERIAL command または環境変数を設定する ANDROID_SERIAL 特定のコマンドを特定の人に送る。初心者なら、これが役に立つだろう。 開発者モードを活用する.
最も便利なコマンドは adb install y adb uninstall APKを管理するパッケージマネージャの助けを借りてシステムにプリインストールされているものも含みます(pmコマンド adb shell デバイス上でUnixシェルを開き、次のようなツールを実行できます。 am (アクティビティマネージャー) pm (パッケージマネージャー)、 dpm (デバイスポリシーマネージャー) logcat 記録のために、 sqlite3 データベース用 (ルート アクセスのある環境)、またはシステム固有のユーティリティ。
非常に実用的でもある ポートリダイレクトを設定する adb forward任意のファイルをコピーする adb push y adb pullサーバー自体を制御するには adb kill-server y adb start-server後者は、ADB サーバーが応答を停止したりデバイスを検出しなかったりする場合に、時々発生するブロックを解決するのに役立ちます。
次のような補完的なツール screencap スクリーンショットと screenrecord ビデオ録画用 簡単なコマンドでデバイスからグラフィック素材を取得できます。例えば:
adb exec-out screencap -p > screen.png
まあ:
adb shell screenrecord /sdcard/demo.mp4 続いて adb pull ビデオをコンピューターに取り込みます。
ワイヤレスデバッグ:よくある問題と解決策
ワイヤレスモードがスムーズに動作しない場合があります。よくある原因はいくつかあります。 ADBによるWi-Fi接続が失敗する場合があります最も一般的な理由の 1 つは、Wi-Fi ネットワークが企業向けまたはセキュリティが非常に高く、P2P 接続や 5555 などのポートがブロックされていることです。その場合、現実的な解決策としては、別のネットワークを使用するか、電話をホットスポットとして使用するか、イーサネットに頼る以外に方法がないことがよくあります。
もう一つの繰り返し発生する問題は、Android 11以降でペアリングに成功した後、 デバイスは ADB 経由でアクセスできなくなりました。これは通常、ネットワークまたはデバイスのmDNS制限が原因です。mDNSが機能していない場合、ADBサーバーはモバイルデバイスを自動的に検出しませんが、手動で接続することは可能です。 adb connect ip:puerto ワイヤレス デバッグ画面から提供されるデータを使用します。
また、携帯電話がネットワークを変更したり、Wi-Fiから切断されたりすると、接続が自動的に切断され、 ペアリング手順または少なくとも接続を繰り返すワイヤレス デバッグが自動的に無効になっている場合は、開発者オプションでクイック タイルが使用可能かどうかを確認します。 ワイヤレスデバッグ クイック設定カーテンからより簡単にアクティブ化できます。
Android 11以降でTaskerとTermuxを使用してWi-Fi経由のADBの使用を自動化する
携帯電話を再起動するたびにアクティベーションと接続のプロセスを繰り返すことを避けたい上級ユーザー向けには、 TaskerとTermuxを使用してADB Wi-Fiの有効化を自動化するこのソリューションは、携帯電話自体が adb ローカルで(Termux の android-tools 経由)TCP/IP モードのアクティベーションとペアリングを管理します。
基本的な要件は次のとおりです。 Android 11以降、設定にADB Wi-FiオプションがあるWi-Fiネットワークに接続され(インターネットアクセスは不要)、Taskerがインストールされ、TermuxとTermux:Taskerプラグインがインストールされ、Taskerに以下の権限が付与されている必要があります。 WRITE_SECURE_SETTINGS y READ_LOGS ADBまたは特定のツールを使用します。これらの権限により、Taskerは安全なシステム設定を変更し、logcatエントリを読み取ることができます。
最初のステップはTermuxを開いてパッケージをインストールすることです android-tools コマンドで pkg install android-toolsインストール中にいくつかの質問に回答する必要がある場合があります。完了したら、次のように入力してみてください。 adb Termux で正しく実行されることを確認します。
次に、フォルダ構造とTaskerが実行するスクリプトを作成する必要があります。Termuxから以下を実行します。
mkdir -p .termux/tasker
次に、次のスクリプトを作成します。
nano .termux/tasker/adb.sh
そのファイルの中に、次のような小さなbashスクリプトを貼り付ける必要があります。 のルート adb Termux内でホストに接続する (IP:ポート)、アクティブ化 adb tcpip 5555ADBサーバーを切断して終了します。最初の行が以下で始まることが重要です。 #!/data/data/com.termux/files/usr/bin/bash (パッドの後ろに余分なスペースはありません)。
次に2番目のスクリプトが作成され、 adb_pair.sh、携帯電話をADB Wi-Fiとペアリングする役割を担う再びTermuxより:
nano .termux/tasker/adb_pair.sh
ホスト(IP:ポート)とペアリングコードをパラメータとして受け取るスクリプトを貼り付け、そのコードを渡す echo a adb pair 終了したらサーバーを強制終了します。前回と同様に、スクリプトの最初の行には、不要なスペースのない正しいシェバンが必要です。
スクリプトを作成して保存したら(nanoでは次のように行います)、 Ctrl+Xを押して「Y」で承認)では、TaskerにTermux環境へのアクセスを許可する必要があります。Androidの設定で、 アプリケーション > Tasker > 権限 > 追加の権限 「Termux 環境でコマンドを実行する」または同等のオプションを有効にします。
ここから、Taskerですべてのプロファイルとタスクを手動で設定する代わりに、 Taskernetから完全なプロジェクトをインポートする スマートフォンとのペアリング、起動時のADB Wi-Fiの有効化、logcatからのポート取得のための設定済みプロファイルが用意されています。これらのプロファイルの基本的な考え方は、音量を上げて長押しすることで起動し、スクリプトを使用してペアリングする、というものです。 adb_pair.shもう 1 つは、起動後に電話がロック解除されたときに実行され、「WLAN 経由のデバッグ」オプションを有効にします。3 つ目は、logcat を監視して Wi-Fi ADB に関連するエントリを探し、ポートを抽出し、スクリプトを呼び出します。 adb.sh 有効にするために adb tcpip 5555.
この構成では、すべてが正しく組み立てられれば、 携帯電話の電源を入れてロックを解除するたびに Taskerは、WLANデバッグの有効化、システムポートのキャプチャ、Termuxからの内部ADBコマンドの実行、ポート5555をリッスンするサーバーの設定をほぼ自動的に行います。その後、PCからは、そのポートでスマートフォンのIPアドレスに接続するだけで済みます。ペアリングコードや一時的なポートを毎回確認する必要はありません。
ワイヤレス ADB のセキュリティ、ベスト プラクティス、および制限
ADBを使用すると、デバイスが多くの権限を持つコンソールに開かれるため、 従うべき良好な安全対策まず、ワイヤレス デバッグを信頼できるネットワーク (自宅、管理されたオフィス、ラボ) に制限し、接続するユーザーを制御できないパブリックまたは共有 Wi-Fi ネットワークではアクティブ化しないようにします。
誰かと共有すべきでもありません。 IPアドレス、ポート、ペアリングコードAndroid 11以降ではコードの有効期限が限られていますが、誰かにアクセスを許可すると、スマートフォンのシステムをインストール、アンインストール、または変更される可能性があります。不要なデバイスをペアリングしてしまったと思われる場合は、ワイヤレスデバッグ画面に移動し、「ペアリング済みのデバイス」リストを確認して「削除」オプションを使用してアクセスを取り消してください。
また、それは良い考えです 使用していないときはデバッグ(USBまたはワイヤレス)を無効にしますこれにより攻撃対象領域が縮小され、例えば、ローカルネットワーク上にマルウェアを仕込んだPCが、デバッグが可能なデバイスを悪用するといった事態を防ぐことができます。また、起動時にWi-Fi経由のADBを有効にする自動スクリプトを使用している場合は、その影響を十分に理解し、スマートフォンを他人のネットワークに常時さらしたままにしないでください。
Android 11以降のワイヤレスADBサポートと従来のTCP/IPオプション(USB、Wi-Fi、さらにはイーサネット経由)を組み合わせることで、Androidデバイスのデバッグと高度な制御ははるかに柔軟かつ便利になりました。公式SDKツール、Android Studio、コンソールユーティリティ、そしてTaskerやTermuxなどの自動化ソリューションを組み合わせることで、次のようなワークフローを構築できます。 特別な場合を除き、USB ケーブルに頼る必要はほとんどありません。適切なレベルのセキュリティを維持しながら、ADB の潜在能力を最大限に活用します。 情報を共有し、他のユーザーが Android 11 以降でワイヤレスで ADB を使用できるように支援します。