2012-04-07 3 views
2

랩톱에서 파이썬 - 블루즈를 사용하고 안드로이드 폰과 안드로이드 - 블루투스 API를 사용하여 내 랩톱을 클라이언트로 (클라이언트로) 연결하려고합니다. 내 노트북 ​​클라이언트에 대한 파이썬에서python-bluez 클라이언트가있는 Android 블루투스 서버 소켓

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() 

청취자 시간 제한을 노트북에서 어떤 연결을 인정하지 않고, 발신자는 다른 포트의 모든 시도에서 '연결됨'을 인쇄합니다.

문제는 안드로이드 폰이 듣고있는 포트/채널을 설정할 수 없다는 것입니다. 또한 포트 번호를 '연결'(2)의 포트 번호로 채워야합니다. 이 스 니펫에서).

제발 도와주세요 - 내 유일한 목표는 현재 전화로 연결 시도를 얻는 것입니다.

답변

1

pybluez documentation(source code) for establishing client connections을 살펴보십시오.

find_service을 사용하여 제공된 Bluetooth 주소 및 UUID의 올바른 포트를 가져올 수 있습니다. 그런 다음 코드에서와 같이 소켓을 연결하고 하드 코드 된 포트 값을 올바른 것으로 바꾸십시오.

투표를 잊지 마세요!

관련 문제