收集,存储和检索传感器数据

时间:2011-10-09 05:09:56

标签: android sensor

我正在开发一个应用程序,需要访问给定传感器的“最后5秒数据”。我的计划是以某种方式存储这些数据,然后当我请求数据时,它将返回在过去5秒内获得的任何数据。鉴于:

,我不确定如何有效地做到这一点
  1. Dalvik不喜欢创建大量对象,因此我不能为包含值+时间戳的每个传感器读取创建一个对象。

  2. 我需要不断地在某种结构中存储新数据,同时检索它的特定部分。

  3. 我唯一的另一个要求是应该处理超过5秒的数据。这不是很关键,但我想保留数据会在内存中消耗。

    我目前有一个onSensorChanged听众设置,所以我不需要帮助。

    有什么想法吗?

1 个答案:

答案 0 :(得分:1)

可能预先分配足够的对象来存储5秒的数据并将它们存储在池中。从池中获取对象,添加时间戳和值并插入到有序集中。插入一个旧对象并将它们放回池中后删除它们。或者你可以只使用循环缓冲区http://en.wikipedia.org/wiki/Circular_buffer