首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CBPeripheral名称有时为空

CBPeripheral名称有时为空
EN

Stack Overflow用户
提问于 2012-09-04 21:54:17
回答 2查看 7K关注 0票数 10

我正在开发一个与蓝牙LE外设通信的应用程序。我现在正在测试的外设是these中的一个。有趣的是,有时当我发现它时,我会得到它的正确名称"SimpleBLEPeripheral",有时我只会得到(null)。似乎没有任何命令可以发送到CBPeripheral来强制对名称进行读取更新,那么如何确保我实际上获得了外设的通告名称?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-09-04 22:12:27

如果您从advertisingData NSDictionary获取该名称,它将始终是外围设备发送的通告数据包中的名称。

但是,如果读取CBPeripheral对象的name属性,则该名称可能会有所不同。我们试图为我们提供当时已知的最好的名字。如果我们尚未连接到外围设备,我们将提供通告数据包中的名称。如果过去已连接到外设,我们将读取间隙名称。我们认为GAP名称是比广告数据包中的名称更好的名称(由于广告数据包的大小限制)。

票数 12
EN

Stack Overflow用户

发布于 2013-06-18 05:46:27

我发现解决这个问题的唯一办法是开始扫描并停止扫描,最终我希望在物理空间中找到的所有设备都显示为非nil名称和非nil UUID。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12265028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档