我有一个简单的任务来编写连接和添加 2 个 Android 设备之间的通信的应用程序。我发现了什么?即 Android BLE 不支持“外设”角色。
1)这意味着我无法通过特殊的 UUID 将一个 android“中央”设备与另一个“外围”android 设备连接起来?对吗?
2) 如果无法通过 BLE 连接 2 个 Android 设备,为什么我们需要 Android 上的 BLE?将 Android 与 iOS 连接起来?
3) Android 设备如何与手表配合使用?
我有一个简单的任务来编写连接和添加 2 个 Android 设备之间的通信的应用程序。我发现了什么?即 Android BLE 不支持“外设”角色。
1)这意味着我无法通过特殊的 UUID 将一个 android“中央”设备与另一个“外围”android 设备连接起来?对吗?
2) 如果无法通过 BLE 连接 2 个 Android 设备,为什么我们需要 Android 上的 BLE?将 Android 与 iOS 连接起来?
3) Android 设备如何与手表配合使用?
1) Android 5 (Lollipop) 获得了对外围角色的高级 API 支持,但如果低级硬件驱动程序不支持它或有未解决的固件错误,或者如果供应商太便宜而无法运行(重新)外围角色认证,那么谷歌给出了一种让供应商使用 0(零)广告商资源配置 BLE 外设角色的方法。它仍将具有高级别的 API,但只会表明没有更多的广告资源。在这种情况下,您不能通过 BLE 将该 Android 供应商模型与另一个模型连接起来。我不清楚你的意思是“特殊 UUID”。每个人都可以生成一个 128 位的服务 UUID 并使用它,但只有外围角色的人才能宣传此服务以供 BLE 中心角色设备连接。BLE 中心角色设备实际上可以为 BLE 外围角色设备提供服务,以便在中心角色设备连接到外围角色设备后发现。这种情况很少见。
2) 需要 BLE 中心角色来连接手表、心率监测器和支持 BLE 外设模式并因此支持广告(可连接)的功能正确的设备。这是一个很好的商业案例,但不包括快速搜索和发现电话 <-> 电话连接。
3) Android 4.3 / 4.4 / 5.0 (Lollipop) 可以很好地与手表配合使用,因为手表处于外设角色并且 Android 可以扫描它们、连接并保持这种连接。
是的,您可以在获得外设角色的 iOS 手机/平板电脑上制作应用程序,搜索和连接并发现来自 Android 4.3/4.4/5.0 (Lollipop) 的设备。然后,这两个可以通信。是的,您可以在 Nexus 9(并希望在 Nexus 6)上制作一个应用程序,该应用程序使用在 iOS/Android 4.3/4.4/5.0(棒棒糖)上发现的外围角色。