私は他の人のように次のリンクをも使用しているBluetooth通信のためにあなたを示唆しています。
- が
- が
を接続された接続受け入れ:
http://developer.android.com/guide/topics/connectivity/bluetooth.html
事はあなたが必要とするすべてではBluetoothChatService.java
このクラスには、次のスレッドがいるクラスでありますあなたのようBluetoothChatServiceの開始関数を呼び出すとき
は今:
mChatService.start();
それは接続のために探し始めることを意味しますスレッドを受け付け開始します。あなたがここに
mChatService.connect(<deviceObject>,false/true);
最初の引数を呼び出す今
を使用すると、ペアリングデバイスのリストから取得することができたり、デバイスをスキャンするとき、あなたがこれにそのオブジェクトを渡すことができます範囲内のすべてのデバイスを取得するデバイスオブジェクトであります2番目の引数は、安全な接続または安全でない接続を作成するブール値です。
connect
機能はスレッドを接続し始めます。スレッドは、受け入れスレッドを実行しているデバイスを検索します。
そのようなデバイスが見つかった場合、スレッドを受け入れ、糸を結ぶの両方がBluetoothChatServiceに接続された機能を呼び出す:
connected(mmSocket, mmDevice, mSocketType);
この方法は、デバイスの両方に接続されたスレッドを開始: このソケットオブジェクト接続スレッドを使用して入力を取得します他の装置にストリームを出力する。 そして、whileループの中で入力ストリームのread
を呼び出すと、他のデバイスからメッセージを送信するたびに常にこのメッセージを返すように、他のデバイスからの読み取りを常に試みます。
BluetoothChatServiceには、入力としてbyte[]
を受け取り、接続されたスレッドで書き込みメソッドを呼び出すwrite
メソッドもあります。
mChatService.write("your message".getByte());
接続されたスレッドの書き込みメソッドは、このバイトデータを他のデバイスの出力ストリームに書き込みます。
public void write(byte[] buffer) {
try {
mmOutStream.write(buffer);
// Share the sent message back to the UI Activity
// mHandler.obtainMessage(
// BluetoothGameSetupActivity.MESSAGE_WRITE, -1, -1,
// buffer).sendToTarget();
} catch (IOException e) {
Log.e(TAG, "Exception during write", e);
}
}
は今だけmChatService上の書き込み機能を呼び出す2つのデバイス間で通信し、他のデバイス上で受信するメッセージを処理します。
データを送信するBluetoothChatの例をベースにすることができます。コードを見ると、テキストメッセージ文字列はブルートゥース経由で送信される前にbyte []に変換されます。したがって、あなたのデータをバイト[]に変換し、それを送信してください。 –
IMHOのチャットの例は、チャットや少し速いコミュニケーションのためだけに良いです。毎秒100以上のメッセージを送信する必要がある場合は、役に立つかどうかわかりません。 – Ewoks