Android --设计一个快速获取数据的后台服务
Android --design a background service for fast data acquisition
我正在为我们的自定义医疗保健硬件设备开发一个 android 应用程序,除其他外,它应该从 5 个传感器接收数据。传感器数据通过蓝牙发送,并使用分别以 64Hz、1000Hz、4Hz、4Hz 和 32Hz 发射的代表接收。我已经成功创建了一个接收传感器数据的应用程序。不幸的是,目前,传感器采集在主 UI 线程上运行。这是不可接受的,因为应用程序应该全天不间断地记录数据。在花了一些时间探索我的选择之后,许多在线教程建议使用服务来实现这一点。然而,有许多类型的服务(IntentServices、前台服务、后台服务......)可供选择,我不确定什么是最好的方法。此外,我的应用程序将以 android O 为目标,并且似乎使用 background services are somehow discouraged。有经验的 android 开发人员会就如何解决这个问题提出一些建议吗?请注意,目前这只是一个演示,电池和其他资源的使用不是问题。
您想要实现的目标的最佳方法是使用前台服务,它将与 ble 设备保持连接并从 gatt 服务获取通知。此外,您还需要使用 WakeLock 让您的服务在睡眠模式下保持活动状态。
一年前制作 sample app for internal ble device. Check bluetooth/gatt 包,这样的实现非常有用。(项目不适合生产,但是 sample/demo 非常好)
我正在为我们的自定义医疗保健硬件设备开发一个 android 应用程序,除其他外,它应该从 5 个传感器接收数据。传感器数据通过蓝牙发送,并使用分别以 64Hz、1000Hz、4Hz、4Hz 和 32Hz 发射的代表接收。我已经成功创建了一个接收传感器数据的应用程序。不幸的是,目前,传感器采集在主 UI 线程上运行。这是不可接受的,因为应用程序应该全天不间断地记录数据。在花了一些时间探索我的选择之后,许多在线教程建议使用服务来实现这一点。然而,有许多类型的服务(IntentServices、前台服务、后台服务......)可供选择,我不确定什么是最好的方法。此外,我的应用程序将以 android O 为目标,并且似乎使用 background services are somehow discouraged。有经验的 android 开发人员会就如何解决这个问题提出一些建议吗?请注意,目前这只是一个演示,电池和其他资源的使用不是问题。
您想要实现的目标的最佳方法是使用前台服务,它将与 ble 设备保持连接并从 gatt 服务获取通知。此外,您还需要使用 WakeLock 让您的服务在睡眠模式下保持活动状态。
一年前制作 sample app for internal ble device. Check bluetooth/gatt 包,这样的实现非常有用。(项目不适合生产,但是 sample/demo 非常好)