Android SDKツールとWi-Fi/Bluetooth接続 – マイナビニュース



昨年末に嗜好品のキャンペーンで、カシオの「Android Wear WSD-F10」があたりました。この機種は、カシオ最初のAndroid Wearスマートウォッチですが、すでに後継機が出ています。もっとも、後継製品が出ているので景品になったんでしょうが……。

この機種は、電源端子がありますが、USB端子を持っていません。このため、ADBなどのAndroid SDKに含まれるツールを使うためには、無線LANやBluetoothによる無線接続が必要になります。ほとんどのAndroidやAndroid WearはUSB接続が可能なので、あまり無線接続する必要がなく、筆者もほとんど使ったことがありませんでした。しかし、USB端子がないWSD-F10を接続するには、無線接続が必要です。今回は、その方法を解説します。

Androidのデバッグ機能であるadb、「Android Debug Bridge」は、PC内で動作し、実際の接続などを行う「サーバー」プロセスと、ユーザーのコマンドを受け付ける「クライアント」プロセスに分かれています。ただし、クライアントプログラムである「adb.exe」を起動すると、サーバーの状態を調べ、必要ならばサーバーの起動を自動的に行うため、ユーザーはサーバーについては何も気にする必要はありません。

adbでは、接続対象のデバイスとして、物理的なAndroid機器とエミュレーターがあります。論理的な接続は、どのデバイスでもTCP/IPで行われますが、物理的な機器に対しては、

  • USB
  • LAN(有線、無線)
  • Bluetooth

の3つの方法で接続が可能です。なお、どの場合でも機器側で「開発者向けオプション」有効にしてデバッグ(adbデバッグ)をオンにしなければなりません。以下の説明は対象機器で「開発者向けオプション」が有効になっていることを前提にしています。

Wi-Fi経由でadbを接続する

ここからは、adb.exeやUSBドライバが正しくインストールされており、USB経由でandroidに接続できていることを前提に説明を行います。有線、無線ネットワークでandroidに接続するには、まず、USBで、PCとアンドロイドスマートフォンを接続した状態で、アンドロイド側を特定のTCPポート番号での待ち受けを行うように設定します。それには、以下のコマンドを使います(拡張子exeを省略していないのは、powershell内での実行を考慮しているためです)。

adb.exe tcpip 5555

なお、この設定は、アンドロイド側に対するものでデバッグを止める(開発者向けオプションでデバッグをオフにする)か、再起動が行われるまで有効なので、毎回、行う必要はありません。また、ポート番号はIPアドレスとかならず対になって使われるため、複数のスマートフォンとWi-Fi接続を行う場合でも同じポート番号5555が利用できますが、複数のスマートフォンがUSB接続されている場合には、コマンドの対象を明確にするため、

adb.exe -s シリアルID tpcip 5555

とする必要があります。シリアルIDは、後述する「adb.exe devices」で表示できます。コマンドの実行が終わったらスマートフォンからUSBケーブルをはずしても大丈夫です。

次に、アンドロイド側のIPアドレスを使って接続を行います。

adb.exe connect IPアドレス

接続を確認するには、以下のコマンドを実行し、シリアル番号として「IPアドレス:5555」が表示されるのを確認します(写真01)。

adb.exe devices

以後は、「adb.exe -s IPアドレス:5555 コマンド」という形式でadbコマンドを実行できます。

Android Wearの場合

Android Wearでは、「開発者オプション」で「ADBデバッグ」をオンにし、「Wi-Fi経由でデバッグ」をオンにします。少し待つと「Wi-Fi経由でデバッグ」のそばにIPアドレスや待ち受けポート番号が表示されます(写真02)。その情報を使い、以下のコマンドでPC側から接続を行います。

adb.exe connect AW-IPアドレス:ポート番号

以後、スマートフォンと同じように、adb devicesなどのコマンドが利用可能になります。

スマートフォンやAndroid WearのIPアドレスは、アンドロイドの「設定 ⇒ 端末情報 ⇒ 電話の状態」などから調べることも可能ですが、利用頻度が高いならDHCPサーバーを設定して、スマートフォンのMACアドレスに対してリースを予約して、毎回特定のIPアドレスが割り当てられるようにするほうがいいでしょう。

Bluetooth経由での接続

Android Wearスマートウォッチには、USBポートを持つものもありますが、そうでない機種もあります。また、無線LANも搭載しているものとそうでないものがあります。ですが、Bluetoothは必ず装備されています。

ただし、Windows PCなどからBluetooth経由でAndroid Wearと接続するには、Android Wearとペアに設定され、Android Wearアプリが動作しているスマートフォンが必要です。まずは、Android Wear側の開発者向けオプション「ADBデバッグ」と「Bluetooth経由でデバッグ」をオンにしておきます(写真03)。なお、Android Wearでは、Wi-Fi経由のデバッグとBluetooth経由のデバッグは排他的でどちらか一方のみしかオンにできません。

次にスマートフォン側のAndroid Wearアプリ(写真04)を起動し、Bluetoothデバッグが可能なように設定を行います。アプリ画面右上の歯車アイコンを使い「設定」を開いたら、下にある「デバッグする端末」で対象Android Wearスマートウォッチを選び、下の「Bluetooth経由のデバッグ」をオンにします。この状態で、(写真05)のように「ターゲット:接続済み」と出れば、スマートウォッチ側の準備はととのっています。

次に、スマートフォンをUSBでPCと接続し、以下のコマンドを使ってスマートウォッチと接続を行います。

adb.exe forward tcp:4444
adb.exe connect 127.0.0.1:4444

これで、スマートフォンのAndroid Wearアプリには「ホスト:接続済み」と表示されるようになるはずです(写真06)。なお、先にスマートフォン側とWi-Fiによる接続を行っていれば、上記のコマンドを実行するのに必ずしもUSBで接続されている必要ありません。

adbコマンドは、Android SDKのPlatform toolsに含まれています。以前は、SDK全体をダウンロードする必要がありましたが、現在では、Platform toolsのみをダウンロード可能です。ツールのインストールなどについて、しばらく解説していなかったので、次回は、adbコマンドのインストールや基本的な使い方について解説する予定です。



Related Post