Bluetooth デバイスに接続する Android クライアントを作成する方法
ここでは「Bluetooth で遠隔端末に温度データを送る」で作成した、"Bluetooth 温度計" に接続してデータを読み取る、アンドロイド・アプリを作る方法を紹介します。
アンドロイドにおける Bluetooth の使い方については、アンドロイド開発入門の記事「Bluetooth」に書きましたので、 そちらをみてください。
ここでは、「Android 間での RFCOMM チャネルの Bluetooth 通信 2/2」で作成したクライアントプログラムをベースにして、 Bluetooth シリアルモジュール HC-06 に接続するのに必要な変更点について記載します。
クライアントからサーバーに接続するときに、RFCOMM チャネルを作成して BluetoothSocket を作成する必要がありますが、 このときに指定する UUID は SPP (シリアルポートプロファイル) の UUID である "00001101-0000-1000-8000-00805f9b34fb" を指定します。
またデバイス名は "MYBT1" にしていますので、Bonded リストから BluetoothDevice を探す際の名前も変更します。
これらは Constants.java に記載していますので、そこを変更します。
package com.keicode.android.testapps.bttest1c;
import java.util.UUID;
public interface Constants {
public static final String BT_DEVICE = "MYBT1";
public static final UUID BT_UUID = UUID.fromString(
"00001101-0000-1000-8000-00805f9b34fb");
public static final String STATE_TEMP = "STATE_TEMP";
public static final int MESSAGE_BT = 0;
public static final int MESSAGE_TEMP = 2;
}
さらに、プログラミングというよりは環境設定ですが、デバイス名はここでは "MYBT1" ですが、これをあらかじめペアリングしておきます。
以上の変更を行い、Arduino 温度計と Android の両方を起動すれば自動的に接続して、Android 画面に温度が表示されるはずです。
Bluetooth を利用すると、ここで紹介したようにスマートフォンなどとの接続も非常に容易になり便利ですね。