【问题标题】:Android BLE NotificationAndroid BLE 通知
【发布时间】:2017-03-08 13:35:05
【问题描述】:

我正在使用 BLE 开发一个 android 应用程序。我已经实现了所有基本操作,例如发现、连接和数据传输。

现在我正在寻找 BLE 通知,是否可以在应用程序未运行(甚至在后台也不运行)时从 BLE 设备接收通知。

我想要实现的是类似于 GCM/FCM 的通知,即使应用没有运行,我们也会在应用中收到通知。 所以想检查一下BLE设备和Android框架是否支持类似的通知机制。

我已经搜索了几个小时,但没有得到任何正确的结果。

如果有人能告诉我它是否支持?

【问题讨论】:

    标签: android bluetooth notifications bluetooth-lowenergy android-bluetooth


    【解决方案1】:

    现在我正在寻找 BLE 通知,当应用程序未运行(甚至在后台)时,是否可以从 BLE 设备接收通知。

    BLE 只是一种通信协议。当有人说话时,必须有人倾听。

    我想要实现的是类似于 GCM/FCM 的通知,即使应用没有运行,我们也会在应用中收到通知。所以想检查一下BLE设备和Android框架是否支持类似的通知机制。

    GCM/FCM 工作,因为 Google Play 服务正在设备上运行以侦听消息。

    根据您的问题,我可以想象两种可能的情况:

    1. 如果“接收通知”是指蓝牙特性发生变化 - 那么您的应用程序应该已经在运行了。只有你知道如何与 BLE 设备对话。

    2. 如果您想使用 BLE 实现位置感知信标类型行为,您可以利用现有的 Google Nearby 功能来实现所需的效果。

    【讨论】:

      【解决方案2】:

      我会说不。您需要运行应用程序才能获得蓝牙回调。您应该简单地在您的进程中设置一个前台服务,这将使应用程序在后台运行。

      【讨论】:

        【解决方案3】:

        如果您想在您的应用未运行时接收通知事件,您应该实现持续扫描 BLE 帧的 Android 服务,并捕获满足某些参数的帧(例如对于 iBeacon,它将是特定的 Major 和次要值;对于 Eddystone URL——一些特定的 URL 等)——只需发送打算启动您的应用程序。

        【讨论】:

          猜你喜欢
          • 2015-01-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-11-12
          • 2013-07-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多