首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >需要快速读取android传感器

需要快速读取android传感器
EN

Stack Overflow用户
提问于 2009-12-17 02:28:05
回答 5查看 8.5K关注 0票数 20

问题:-

  1. 我正在开发一个应用程序,它每5毫秒需要一个新的加速数据。

我的方法:-

在初始化SensorManager.

  • Then时,我已经创建了一个仅从SensorManager.

  • I读取加速数据的远程服务,并将读取速率设置为“
  1. ”。我使用IPC与我的主应用程序进行通信,以获得这些读数。

问题:-

  1. 如果我将日志放入onSensorChange()事件中,则每隔20毫秒就会收到一次新的传感器数据。但我每5毫秒就需要一次数据。

问题?

  1. 是否有更好的方法来更快地读取传感器数据。
  2. 是否有什么方法可以轮询传感器数据,而不是等待事件处理程序触发事件?

请帮助我找到更好的解决方案,在5ms时间内读取数据或轮询加速数据。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-08-24 03:43:49

据我所知,加速度计噪音很大,不适合快速操作。请参阅http://www.youtube.com/watch?v=C7JQ7Rpwn2k上关于传感器融合的GoogleTech演讲,以获得更具权威性的解释以及您可以对此做些什么。简要说明:在高速项目中使用陀螺仪,使用加速计来校正漂移。

票数 8
EN

Stack Overflow用户

发布于 2015-07-15 00:57:42

对于今天提到这篇文章的人来说,,虽然我认为@robinr有一个很好的观点,而且是非常真实的,但这不是一个答案,然而不会让我直接评论它。

有关第一个问题的答案,请参考Native ActivityAnd。Android不保证数据速率,它只确保你得到最小的(如果你要求太多,就得到最大)。

加速计没有噪音,至少今天没有。它实在太擅长拿起所有的东西了。因此,如果你想要一个好的加速度计算法,你需要使用一些滤波。如果你有很好的滤波器,加速度计实际上比其他所有传感器都更好,因为它通常是低功率传感器,具有最高的支持频率,并且最有可能在屏幕关闭时可用(与其他传感器相比)。

使用本机和提取最高频率的强制方法的警告是,您的设备支持将是有限的。这就是为什么Android不支持直接频率设置。

在回答问题2时,您必须通过监视时间戳来手动限制传感器事件。

票数 4
EN

Stack Overflow用户

发布于 2010-08-11 04:19:07

关于Android SensorManager的速度,我更倾向于怀疑生成日志的Android文件I/O的速度。您可以尝试执行传感器读取代码的基准测试,而不写入日志。例如,以毫秒为单位记录当前时间,然后执行1,000,000次传感器读取,然后再次记录当前时间。您可能仍然需要使用C版本来获取数据,但至少您将明确知道瓶颈所在。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1916660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档