我正在开发一款应用程序,该应用程序需要访问给定传感器的“最后5秒钟的数据”。我的计划是以某种方式存储这些数据,然后当我请求数据时,它会返回在最近5秒内获得的任何数据。我不知道如何有效地做到这一点,因为:收集,存储和检索传感器数据
的Dalvik不喜欢有大量的对象被创建,所以我不能让每一个传感器读数包含值的对象+时间戳。
我需要不断地以某种结构存储新数据,同时检索它的特定部分。
我唯一的其他要求是应该丢弃超过5秒的数据。这并不重要,但我想保留这些数据会在记忆中吃掉。
我目前有一个onSensorChanged
侦听器设置,所以我不需要帮助。
任何想法?
我假设你正在与[SensorManager](http://developer.android.com/reference/android/hardware/SensorManager.html),为什么不要每秒都轮询一次[Timer](http://developer.android.com/reference/java/util/Timer.html),在你认为合适的地方存储这些值,然后在需要时查询这样的存储库? –
已经看到了SensorEventListener(http://developer.android.com/reference/android/hardware/SensorEventListener.html),所以当你获得新的数据直到它改变。我会建议将这些信息保存在数据库本地,并使用LoaderManager通过光标访问 – Necronet
@NanoTaboada这就是问题所在,使用哪个存储库以及如何查询它? – Glitch