Bluetooth API

する。Bluetoothの使用メモ

    • デバイスがBluetoothをサポートしているかどうか

if (BluetoothAdapter..getDefaultAdapter() == null) {

// this device is not support Bluetooth

// ...

}

    • Enable

推奨される方法。

Intentをブロードキャストしてユーザーに許可を求める。

if (!mBluetoothAdapter.isEnabled()) {

Intent btEnable = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);

startActivityForResult(btEnable, REQUEST_ENABLE_BT);

}

アプリから直接制御。(非推奨)

BLUETOOTH_ADMINが必要

mBluetoothAdapter.enable();

    • Socket

connectのタイムアウトは12秒。

早めるにはsocket.close()用のThreadを作り、connect直前にThread.start() → Tread内でsleep(timeout) → Thread内でsocket.close()する。

connectスレッドではconnectから復帰後、Threadをinterruptしてsocket.close()するよう通知する。