ios - 如何在低功耗蓝牙 (BLE) 中处理自定义 UUID
<p><p>我想编写一个 iOS 应用程序来将一些数据传输到嵌入式 BLE 模块,反之亦然。为了获得我的数据流的最佳结构,我使用相应的 UUID 创建自己的特征和服务。到目前为止,一切都很好!但是,如果我想添加第二个 BLE 模块而不更改嵌入式 BLE 模块中的硬编码 UUID,会发生什么情况?我是否必须为要添加的每个 BLE 模块生成全新的 UUID?在这种情况下,我也必须更改我的 iOS 应用程序,因为我必须更改特定服务和特性的预期 UUID,还是?谢谢!</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>不,您不必为每个 BLE 模块生成新的 UUID。这不是它的设计运作方式。
只需确保您没有为同一 BLE 模块中的任何特征重复使用相同的 UUID。</p>
<p>拇指规则:</p>
<ol>
<li>我不能让 BLE 模块具有两个具有相同 UUID 的特征。</li>
<li>我不能让一个 BLE 模块具有两个具有相同 UUID 的服务。</li>
<li>我不能让一个 BLE 模块的 UUID 用于服务一次,而相同的 UUID 用于特性。</li>
<li>理论上,我绝对可以拥有无限数量的具有相同 GATT 结构(包括所有 UUID)的 BLE 模块。 </li>
</ol>
<p>这是可能的,因为 GATT 客户端(应用程序)通过连接句柄来区分和访问连接的 GATT 服务器,这超出了连接到同一应用程序的其他 GATT 服务器的范围。</p></p>
<p style="font-size: 20px;">关于ios - 如何在低功耗蓝牙 (BLE) 中处理自定义 UUID,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/32729853/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/32729853/
</a>
</p>
页:
[1]