我正在通过蓝牙将Android设备连接到嵌入式数据采集系统。 DAQ系统将从50Hz到可能的880Hz(可能在将来更多)中采集数据样本,并在收集数据时将其推送到Android设备,或以更快的采样率捆绑。
有很多关于如何管理蓝牙连接的例子,但没有关于如何处理数据的例子。
我需要将数据保存到某种长期存储中,并能够在较长时间内以这些较高的采样率持续执行此操作。
我知道要在UI线程上执行此操作,因此无需为此提供帮助。 Android上的哪种存储介质可以快速响应以跟上传入的数据? SQLite数据库是否足够快?好像很快就会陷入困境。
答案 0 :(得分:0)
我知道这是一个非常古老的问题,但我认为无论如何我都会提出一个答案。 SQLite应该工作。将数据缓冲到一定长度的字节数组中是个好主意,具体取决于您存储的数据。一旦该数组已满,将其插入SQL数据库并将所有新数据接受到新数组中。一旦它已满,将其存储到数据库;等等。通过这种方式,您可以实现一种双缓冲。数据库修改涉及磁盘I / O;你会使用缓冲区,因为将大量数据写入磁盘比写入大量小块更有效。