我正在实现一个Android 7应用程序,用于从智能手机(如加速器,陀螺仪等)收集传感器数据。目前,我有一个后台服务,该服务收集所有传感器数据(每种传感器类型使用registerListener
和onSensorChanged
)并将它们存储在SQLite数据库中(每个传感器一个表)。
这是正确的方法还是应该为每个传感器创建一项服务?尤其是当我每个传感器的采样率为50 Hz时,我不知道一项服务是否足够。
答案 0 :(得分:2)
这是正确的方法吗
关于服务数量,是的。您可能还有其他问题,例如not having background access to sensors on Android 9.0+。
我应该为每个传感器创建一项服务吗?
否。
尤其是当我对每个传感器的采样率为50 Hz时,我不知道一项服务是否足够。
拥有更多服务不会影响您处理50Hz采样率的能力。这是拥有合适的线程模型的问题,以便对这些样本进行的任何重要工作都在后台线程(或来自较小线程池的线程)上进行。