簡體   English   中英

android 帶有 python-bluez 客戶端的藍牙服務器套接字

[英]android bluetooth serversocket with python-bluez client

我正在嘗試使用筆記本電腦上的 python-bluez 和手機上的 android-bluetooth API 將我的筆記本電腦(作為客戶端)連接到我的 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");   
}

以及我的筆記本電腦客戶端 python 中的以下內容:

from bluetooth import *

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

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

print "Connected"
sock.close()

監聽器超時而不確認來自筆記本電腦的任何連接,而發送者繼續在不同端口上的所有嘗試上打印“已連接”。

問題是我不知道也無法設置 android 電話正在監聽的端口/通道,而且我需要填寫端口號作為“連接”的第二個參數(此代碼段中為 2) .

請幫幫我——我目前唯一的目標是讓手機確認連接嘗試。

查看用於建立客戶端連接的 pybluez 文檔(源代碼)

您可以使用find_service獲取提供的藍牙地址和 UUID 的正確端口。 然后像在代碼中一樣連接套接字,用正確的值替換硬編碼的端口值。

別忘了投票!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM