如何知道tag的名字

公告

大中华汽车电子生态圈社区并入开发者社区- 更多资讯点击此

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
YaTr_3516311
Level 5
Level 5
25 sign-ins First solution authored 100 replies posted

Hi,

如果我有个tag,这个tag的advertisement data是02010511071bc5d5a502005882e611fb26603beb0f00000000000000000000.

pastedImage_0.png

因为每个tag的uuid都是不一样的(也就是说advertisment里的信息都是不一样的)

1. 如果有很多的tag的话,我能怎么区分呢?

2. 如何获取tag的名字?是不是读取HANDLE_HCLIENT_GAP_SERVICE下的HANDLE_HCLIENT_GAP_SERVICE_CHAR_DEV_NAME_VAL就行了?

0 点赞
1 解答
Owen_Zhang123
Moderator
Moderator
Moderator
5 questions asked 500 solutions authored 250 sign-ins

进行扫描时,可以获取到设备的广播包和扫描回复包,可以通过里面的数据来区分不同的tag。

在非连接状态下,是无法读取对端的database的,如果tag没有在广播包或者扫描回复包里添加自己的名字,则无法获取到。

在原帖中查看解决方案

0 点赞
3 回复数
Owen_Zhang123
Moderator
Moderator
Moderator
5 questions asked 500 solutions authored 250 sign-ins

进行扫描时,可以获取到设备的广播包和扫描回复包,可以通过里面的数据来区分不同的tag。

在非连接状态下,是无法读取对端的database的,如果tag没有在广播包或者扫描回复包里添加自己的名字,则无法获取到。

0 点赞

广播包和扫描回复包是分别怎么获得的?我现在只是scan的callback里打印数据,这个是回复扫描包?

0 点赞
Owen_Zhang123
Moderator
Moderator
Moderator
5 questions asked 500 solutions authored 250 sign-ins

广播包通过passive scan就可以获得,你目前获得的应该是广播包。

扫描回复包需要使用active scan获取,wiced_bt_ble_scan_results_t的ble_evt_type如果是BTM_BLE_EVT_SCAN_RSP类型,那么获取到的p_adv_data就是扫描回复包。

0 点赞