2012-04-07 7 views
2

私はノートパソコンのpython-bluezと電話のAndroid-bluetooth APIを使用して、(クライアントとして)自分のAndroid端末(リスナとして)に接続しようとしています。私のラップトップクライアントのためにpythonでpython-bluezクライアントを搭載したアンドロイドのBluetoothサーバソケット

BluetoothServerSocket tmp = badapter.listenUsingRfcommWithServiceRecord(
    badapter.getName(), MY_UUID); 
BluetoothServerSocket bserversocket = tmp; 
if(bserversocket != null) 
{ 
    BluetoothSocket acceptsocket = bserversocket.accept(timeout); 
} 
//timeout is set to about 15 sec 
if(acceptsocket != null) 
{ 
    out.append("got the connection...\n"); 
} 

と次:

私は自分の携帯電話のために次のコードを使用

from bluetooth import * 

btooth_addr = "38:EC:E4:57:1F:1B" 

sock = BluetoothSocket(RFCOMM) 
sock.connect((btooth_addr, 2)) 

print "Connected" 
sock.close() 

リスナーのタイムアウトをノートPCからのすべての接続を認めずに、送信者は異なるポート上のすべての試行で「接続済み」と表示されます。

問題は、アンドロイド電話が聞いているポート/チャンネルを設定できないことです。また、ポート番号を「接続」の2番目の引数として入力する必要があります(2このスニペットで)。

私を助けてください - 私の唯一の目標は、現時点では電話で確認応答を得ることです。

答えて

1

pybluez documentation(source code) for establishing client connectionsをご覧ください。

find_serviceを使用して、指定したBluetoothアドレスとUUIDの正しいポートを取得できます。 それから、あなたのコードと同じようにソケットを接続し、ハードコードされたポートの値を正しいものに置き換えてください。

投票を忘れないでください!

関連する問題