主機(jī)連接從機(jī)后,如何獲取從機(jī)的設(shè)備名(DEVICE NAME)?

主機(jī)連接從機(jī)后,如何獲取從機(jī)的設(shè)備名(DEVICE NAME)?

獲取從機(jī)設(shè)備名稱,需要相應(yīng)的句柄,目前我是用句柄0x16來(lái)獲取設(shè)備名,確實(shí)能獲取到對(duì)應(yīng)的設(shè)備名稱,但我不確定是不是固定的句柄?還是說(shuō)需要先獲取句柄?

#define?DEVICE_NAME_HANDLE 0x16


? ? ? attReadReq_t req;

? ? ? ?req.handle = DEVICE_NAME_HANDLE;

? ? ? ?if(GATT_ReadCharValue(centralConnHandle, &req, centralTaskId) == SUCCESS)


上電的時(shí)候獲取名稱可以參考如下:

2.png

通過(guò)藍(lán)牙建立連接后獲取Device Name,可以通過(guò)手機(jī)建立連接,然后抓包工具獲取,測(cè)試抓取Peripheral的handle值如下:

4.png



謝謝。

這樣看來(lái),獲取DEVICE NAME信息的句柄就是不固定的,這就有點(diǎn)麻煩,主機(jī)需要連接好幾種從機(jī)設(shè)備。有沒(méi)有合適的辦法獲取到對(duì)應(yīng)的句柄?



這個(gè)服務(wù)的uuid應(yīng)該是一樣的,都是0x1800,然后名字對(duì)應(yīng)的通道uuid是0x2a00,可以根據(jù)這個(gè)來(lái)獲取handle,不過(guò)需要注意的是,這個(gè)不是必須包含的信息,有些從機(jī)可能是沒(méi)有的,并且一般設(shè)置這個(gè)名字都是和廣播包名字保持一致的。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频