我有两个应用程序通过 CoreBluetooth、iOS 和 Today Extension(外围)和 OSX(中央)进行通信。
1 - 设置过程(iOS 应用程序 x OSX 应用程序):它们连接、交换存储的数据并断开连接。
2 - 应用程序的主要功能使用(iOS Today Extension x OSX 应用程序):它们连接、交换数据和断开连接。
除非我在第 1 步和第 2 步之间关闭并再次打开 iPhone 的蓝牙,否则 OSX 应用程序会找到 iPhone,连接,但在 OSX 应用程序中调用 peripheral.discoverServices 后从 Today Extension 中找到 0 个服务。
如果我确实关闭和打开蓝牙,一切都会按预期进行。会是什么呢?非常欢迎任何帮助。谢谢!
更新:在 OSX 上使用 LightBlue 后,我能够确认,除非我重新启动蓝牙,否则步骤 1 中使用的 UUID 服务会继续被宣传,只有当我重新启动蓝牙时,才会显示步骤 2 中使用的 UUID。