Bluetooth通信2

1258 ワード


private class ConnectThread extends Thread {
    private final BluetoothSocket mmSocket;
    private final BluetoothDevice mmDevice;

    public ConnectThread(BluetoothDevice device) {
        BluetoothSocket tmp = null;
        mmDevice = device;

        // BluetoothDevice Socket
        try {
            // MY_UUID UUID , 
            tmp = device.createRfcommSocketToServiceRecord(MY_UUID);
        } catch (IOException e) { }
        mmSocket = tmp;
    }

    public void run() {
        // // , 
        mAdapter.cancelDiscovery();

        try {
            //  
            mmSocket.connect();
        } catch (IOException connectException) {
            //  
            try {
                mmSocket.close();
            } catch (IOException closeException) { }
            return;
        }

        //  , 
        manageConnectedSocket(mmSocket);
    }

    /**  , Socket */
    public void cancel() {
        try {
            mmSocket.close();
        } catch (IOException e) { }
    }
}