我正在尝试制作一个使用Android的新蓝牙低功耗 API的应用程序。为此,我从API 级别 18附带的 BLE 示例开始。
当我读到 Android 不能充当外围设备时,我将 Android 手机置于中央模式,扫描它周围的BLE 设备。为此,我使用模拟心脏传感器的 Nordic 平台进行了一些测试。一切都以完美的方式运作!
在此之后,我尝试选择一部iPhone(iOS 7 beta 4)并将其置于 Peripheral 方式中,并模拟心率传感器作为之前的测试。Android 应用程序能够看到设备并连接到它。但是在连接激活后,2 台设备会在 3-4 秒内相互断开连接。除此之外,当我在 Android 端调用 discoverServices() 时,不会触发回调!在某些情况下,即使 iOS 蓝牙芯片关闭,Android 设备也会收到“已连接”事件。这很奇怪。为了证明这一点,我将Nordic Board 置于 Central 模式,并且我能够正确连接到 iOS 设备,没有任何问题。
会是什么呢?Android 或 iOS 有一些限制,不允许从 Android 连接到 iOS,反之亦然?
谢谢。
编辑:经过一番艰苦的测试,我在 AOSP 页面上提出了一个问题。可以在这里检查