Bluetooth Android для Windows 7 - PullRequest
0 голосов
/ 15 июня 2011

Я пытаюсь создать приложение, которое передает строки данных с моего телефона Android на мой ноутбук, работающий под управлением Windows 7 (и наоборот) по Bluetooth.

Я подумал, что открою сервер-Socket на Windows Machine и запрограммируйте приложение Android для запуска Client-Socket.Но, зная, что Android SDP (Service Discovery Protocol) и подключается по UUID, создал точку, в которой я запутался.

Запутался, как запустить серверный сокет на стороне сервера, используя Windows API.МОЙ вопрос: будет ли андроид определять сокет сервера, если я просто запустил сокет Bluetooth с

SOCKET sock_s, sock_c;
SOCKADDR_BTH add1,add2;
sock_s =socket( AF_BTH,SOCK_STREAM,BTHPROTO_RFCOMM );
        if ( sock_s == INVALID_SOCKET )
            return -2;

        //Clearing the SOCKADDR_BTH variable
        memset(&add1,0,sizeof(add1));

        add1.addressFamily=AF_BTH;
        add1.serviceClassId=my_Guid;

Или есть другой способ создать сокет сервера, который следует протоколу SDP в стеке MICROSOFT?

1 Ответ

0 голосов
/ 15 июня 2011

Нужно ли использовать собственный код на коробке Windows?Если вы не используете мою библиотеку ( 32feet.NET ), это упрощает такие вещи, как Bluetooth на стороне сервера :

Class MyConsts
  Shared ReadOnly MyServiceUuid As Guid _
    = New Guid("{00112233-4455-6677-8899-aabbccddeeff}")
End Class

  ...
  Dim lsnr As New BluetoothListener(MyConsts.MyServiceUuid)
  lsnr.Start()
  ' Now accept new connections, perhaps using the thread pool to handle each
  Dim conn As New BluetoothClient = lsnr.AcceptBluetoothClient()
  Dim peerStream As Stream = conn.GetStream()
  ...

Вы можете даже использовать 32feet.NETиз C ++ с C +++ / CLR.

Или IIRC есть простой способ получить Windows WSASetService , чтобы добавить базовую запись SDP для сокета вашего сервера (если у вас нет пользовательской записидобавить).Или получите номер порта RFCOMM из сокета Windows (getsockname) и скажите, чтобы приложение Android подключилось напрямую к этому номеру порта - при условии, что оно может это сделать ...

...