通过NDK访问Android传感器

我需要在Android上以加速度计读取大约100个样本,并且采用固定的采样率。 目前的传感器管理员既不提供也不提供。

我读过需要非常快速地阅读android传感器

他似乎可以访问使他的生活更轻松的驱动程序代码。

我很好奇是否有人能够通过NDK做这样的事情而没有那种知识。

提前致谢!

我看了一下sensor.h,API看起来非常有前景; 然而,关于如何处理ASensorEventQueue和ASensorEventQueue_hasEvents等的一些方法将是非常有用的。

哈! 更新:

这看起来是您想要做的代码示例。

http://developer.android.com/reference/android/app/NativeActivity.html

自Android SDK版本9(Android> 2.2)以来,似乎可以通过NDK使用传感器。

请参阅文档中包含的STABLE_APIS.html文件。 (搜索“sensor.h”)。 该文件的镜像在这里 。

例如来自谷歌https://github.com/googlesamples/android-ndk/tree/master/sensor-graph 。他们的代码允许你控制加速度计的SENSOR_REFRESH_RATE_HZ。写在c ++上并通过NDK连接到java代码。

可以直接从系统“文件”读取传感器,如:

/ sys / class / sensors / light_sensor / lux或/ sys / class / sensors / light_sensor / raw_data

我想知道是否有更直接的方法,直接从芯片上读取。

喜欢/ dev /中的东西……