ADB 入門チュートリアル

Android開発


記事ディレクトリ


序文

基本的な使用
法のコマンド構文

adb コマンドの基本的な構文は次のとおりです。

adb [-d|-e|-s <serialNumber>] <command>

接続されているデバイス/エミュレータが 1 つだけの場合は、[-d|-e|-s] 部分を省略して、adb を直接使用できます。
コマンドの対象デバイスを指定します

複数のデバイス/エミュレータを接続している場合は、コマンドのターゲット デバイスを指定する必要があります。
パラメータの意味
-d は、現在 USB 経由で接続されている唯一の Android デバイスをコマンド ターゲットとして指定
します。 -e は、現在実行中の唯一のエミュレータをコマンド ターゲットとして指定します。
-s は、対応するシリアル番号番号を持つデバイス/エミュレータをコマンド ターゲットとして指定します。

-s パラメータは、複数のデバイス/シミュレータが接続されている場合によく使用され、serialNumber は adb devices コマンドで取得できます。のように:

$ adb devices

List of devices attached
cf264b8f	device
emulator-5554	device
10.129.164.6:5555	device

出力内の cf264b8f、emulator-5554、および 10.129.164.6:5555 は、serialNumber です。

たとえば、デバイス cf264b8f を指定して adb コマンドを実行して画面解像度を取得するとします。

adb -s cf264b8f shell wm size

もう 1 つの例は、デバイス 10.129.164.6:5555 にアプリケーションをインストールすることです (この形式のシリアル番号の形式は : で、これは通常、ワイヤレス接続されたデバイスまたは Genymotion などのサードパーティの Android エミュレータです)。

adb -s 10.129.164.6:5555 install test.apk

複数のデバイス/シミュレータが存在する場合は、これらのパラメータを使用してコマンドのターゲット デバイスを指定します。以下の説明は簡略化されているため、繰り返しません。
起動停止

adb サーバーコマンドを開始します。

adb start-server

(通常、このコマンドを手動で実行する必要はありません。adb コマンド実行時に adb サーバーが起動していないことが判明した場合は、自動的に adb サーバーが呼び出されます。)

adb サーバーを停止するコマンド:

adb kill-server

adbのバージョンを確認する

注文:

adb version

出力例:

Android Debug Bridge version 1.0.36
Revision 8f855a3d9b35-android

root権限でadbdを実行する

adb の動作原理は、PC 側の adb サーバーが携帯電話側のデーモン プロセス adbd との接続を確立し、PC 側の adb クライアントが adb サーバー経由でコマンドを転送し、adbd が解析して実行されるというものです。コマンドを受信して​​います。

したがって、adbd が通常の権限で実行される場合、root 権限を必要とする一部のコマンドは adb xxx で直接実行できません。このとき、adb shellでコマンドを実行してからsuすることもできますし、adbdにroot権限で実行させることもでき、高い権限のコマンドを自由に実行することができます。

注文:

adb root

通常の出力:

restarting adbd as root

次に、adb シェルを再度実行して、コマンド ライン プロンプトが #? に変わったかどうかを確認します。

一部の携帯電話が root 化されると、adb root コマンドを使用して root 権限で adbd を実行できなくなります。たとえば、Samsung の一部のモデルでは、運用ビルドでは adbd を root として実行できないというメッセージが表示されます。この時点では、最初に adbd Insecure をインストールしてから、次にadb rootを試してください。

同様に、adbd を root 以外の権限に復元する場合は、adb unroot コマンドを使用できます。
adbサーバーのネットワークポートを指定します

注文:

adb -P <port> start-server

デフォルトのポートは 5037 です。
デバイス接続管理
接続されているデバイス/シミュレーターのクエリ

注文:

adb devices

出力例:

List of devices attached
cf264b8f	device
emulator-5554	device
10.129.164.6:5555	device

出力形式は [serialNumber] [state] です。serialNumber は私たちがよく SN と呼ぶもので、state には次のタイプがあります。

offline —— 表示设备未连接成功或无响应。
device —— 设备已连接。注意这个状态并不能标识 Android 系统已经完全启动和可操作,在设备启动过程中设备实例就可连接到 adb,但启动完毕后系统才处于可操作状态。
no device —— 没有设备/模拟器连接。

上記の出力は、現在 3 つのデバイス/エミュレータが接続されていることを示しています。cf264b8f、emulator-5554、および 10.129.164.6:5555 がそれぞれの SN です。名前のエミュレータ-5554 から Android エミュレータであることがわかり、シリアル番号 10.129.164.6:5555 は通常、ワイヤレス接続されたデバイスまたは Genymotion などのサードパーティの Android エミュレータです。

一般的な例外出力:

没有设备/模拟器连接成功。
    List of devices attached
设备/模拟器未连接到 adb 或无响应。
    List of devices attached
    cf264b8f	offline

USB接続

USB 接続経由で adb を通常に使用するには、いくつかの点を確認する必要があります。

ハードウェアの状態は正常です。
Android デバイスが正常に電源オンの状態にあり、USB ケーブルおよびさまざまなインターフェイスが良好な状態にあることを含みます。

Android デバイスの開発者向けオプションと USB デバッグ モードがオンになっています。

「設定」-「開発者向けオプション」-「Android デバッグ」に移動して表示できます。

設定で開発者向けオプションが見つからない場合は、イースターエッグを使用して表示させる必要があります。「設定」-「端末情報」で「バージョン番号」を 7 回連続でクリックします。

デバイスドライバーの状態は正常です。

Linux や Mac OS X では気にする必要はないようですが、Windows ではドライバーのインストールが必要になる場合がありますので、「コンピューター」を右クリックし、「プロパティ」で確認してください。 「デバイス マネージャー」に移動して、関連するデバイスを確認します。黄色の感嘆符または疑問符はありますか? そうでない場合は、ドライバーのステータスが良好であることを意味します。それ以外の場合は、モバイル アシスタント プログラムをダウンロードして、最初にドライバーをインストールできます。

パソコンとデバイスをUSBケーブルで接続し、状態を確認します。

    adb devices
如果能看到
    xxxxxx device

接続は成功しました。

リンク

参考リンク1: https://blog.csdn.net/qq_26394845/article/details/116752349
元リンク: https://github.com/mzlogin/awesome-adb/blob/master/README.md

おすすめ

転載: blog.csdn.net/zyq880625/article/details/132624825