传感器收集的最佳背景技术

时间:2019-02-28 12:30:38

标签: android background-service

我正在设计一个Android应用程序,该程序可以连续收集惯性数据(来自加速度计和陀螺仪)用于实验,然后将其打包成块并发送到云中。

  • 我不需要实时性能,因此可以将数据存储到二进制文件中,并在“方便”时将它们发送到云中
  • 收集和中继需要运行24/7
  • 我可以进行一项或两项活动,没有响应式UI和奇特的东西。也许一次登录,第二次启动所有进程

据我所知,我已经建立了一个活动的原型,该活动可以监听传感器并用读数填充缓冲区。当缓冲区已满时,将产生一个线程,在该线程中,我打开一个新文件,并从缓冲区中写入字节。有时候我必须设计上传模块,当我有N个文件时,我会将它们上传到云中。

它似乎可以这种方式工作,但是我有一个问题:

对于这种应用程序是否有更好的设计模式,也许有背景技术?

我知道有很多类可以处理工作,例如JobSchedulers,后台和前台服务(根据android docs后台服务目前有很多限制,我想我不能使用它们)或jetpack WorkManager,但是如果需要,我很难找到合适的。