之前可能已经多次问过这个问题,但是我的网络搜索技能并不能真正引导我找到合适的答案。
我有一个东西,它从带有请求-响应协议的移动应用程序中获取命令。
它也不时向移动应用程序发送通知。
直到现在,我使用 RFCOMM,但 iOS 似乎并不真正支持它。所以我不得不切换底层实现。到目前为止,我发现 GATT 配置文件可能正是我所需要的,但我不确定它是否是正确的方向。或者,如果它完全可以实现。
那么我应该深入研究什么配置文件/设置来实现这种通信模式?
BLE客户端服务器通信
物联网
蓝牙
蓝牙低功耗
2021-06-24 13:01:17
2个回答
由于您在问题中专注于 iOS,因此我建议您查看
- Apple 的蓝牙开发者网站。
- 仔细看看iOS 和 iPadOS 支持的蓝牙配置文件
- 以及配件设计指南的第 15 章
根据个人经验,我建议使用乐鑫 ESP32 作为您的开发工具,因为您可以学到很多关于蓝牙开发的知识。值得注意的是,使用 BLE 开发 iOS 交互性比经典蓝牙更灵活,而且,如果我可以分享一个有经验的意见,乐鑫有许多带有良好文档的示例。
确切的设置取决于您想要或需要做什么,但基本方案是:
- 您使用自己的自定义 UUID 定义服务
- 您在该服务(或多个)上定义一个特征,根据您的需要使用读/写/通知标志
- 你开始做广告
这是一种适用于所有运行了适当应用程序的 BLE 设备的方案。
有时您可以只做广告,而不必为服务和特性而烦恼。有时您使用预定义的服务和特征。可能还有其他组合。