问题标签 [android-sensors]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
549 浏览

android - 如何计算加速手机的方向

我想计算手机的方向。Android文档说我可以使用getRotationMatrix(float [] R,float [] I,float []重力,float []地磁)和remapCoordinateSystem(float [],int,int,float [])来做到这一点,但也可以在文档写入此函数返回的矩阵仅在设备不是自由落体且不靠近磁北时才有意义。如果设备正在加速或置于强磁场中,则返回的矩阵可能不准确

我的问题是当手机加速时如何计算手机方向,不管是什么加速,自由落体,手机连接到汽车等......

0 投票
2 回答
11388 浏览

android - 如何在Android上从方位角获取指南针方向

我必须显示用户指向 Android 设备的方向。

我正在使用Sensor.TYPE_ACCELEROMETER,Sensor.TYPE_MAGNETIC_FIELD来获取方位角、俯仰角、滚动角。但我能够弄清楚如何从中获取方向(北,南,东,西,......)。

请帮忙

谢谢

0 投票
2 回答
2515 浏览

android - 为什么安卓传感器中有三个(冗余?)加速度计变化

在 android 中,我们有 Sensor.TYPE_GRAVITY、Sensor.TYPE_ACCELEROMETER、Sensor.TYPE_LINEAR_ACCELERATION。

从android开发者论坛得知,“加速度计、重力和线性加速度传感器的输出必须遵循以下关系:加速度=重力+线性加速度”

Sensor.TYPE_GRAVITY 和 Sensor.TYPE_LINEAR_ACCELERATION 是否使用与 Sensor.TYPE_ACCELEROMETER 相同的传感器 - 即加速度计?如果可以使用低通和高通滤波器使用另一个的值来推导出一个的值,那么拥有 3 个不同的常数的目的是什么?

0 投票
1 回答
1845 浏览

android - 是否所有 Android 手机都有最少的传感器集

我正在尝试了解 Android 手机中的传感器。

是否所有/大多数手机都有一套基本的传感器,或者我是否必须查看各个规格以找到每个支持的内容。我查看的规格似乎不太清楚每部手机实际提供的功能。

我什至找不到过时的手机及其传感器列表,但如果有人能指点我,我将不胜感激。

我应该明确表示我正在寻找这些信息,因为我的应用程序可能需要特定的传感器或传感器组合。如果这些通常不可用,那么该应用程序可能不值得开发。此外,有可能使用一种以上的传感器组合来完成这项工作,因此有关可能可用的信息将有助于开发。

0 投票
1 回答
909 浏览

android - Android:除了 Location.getAltitude() 之外,还有其他方法可以获取高度吗?(我听说过使用传感器)

除了 Location.getAltitude() 之外,有没有办法获得高度?我听说过使用 Sensor,但不知道也无法在网上找到。

UPDATES1 我发现SensorManager.getAltitude(float, float)使用了 API 级别 9,但不知道如何实现它。你愿意与我们分享。

0 投票
6 回答
9908 浏览

android - Android:如何调用其他 API 级别中存在的方法?

我有使用 Android 2.1 的应用程序,它利用 LocationManager 来获取高度。但是现在,我需要使用需要 API 级别 9 (2.3) 的 SensorManager 来获取高度。

如何SensorManager.getAltitude(float, float)通过放置条件并通过函数名称调用它(在普通 Java 中可能)将其放入我的 2.1 android 应用程序中?

先感谢您

更新 1 如果您注意到我的应用程序需要使用 Android 2.1 进行编译。这就是为什么我正在寻找一种通过名称或任何其他可以编译的方式调用函数的方法。

0 投票
2 回答
8431 浏览

android - Android:如何使用 SensorManager.getAltitude(float p0, float p)?

我找到了另一种使用 SensorManager 获取高度的方法,但它需要两个参数。

您能通过实际示例/代码片段教我们如何使用它。

UPDATES1 我找到了 Web 服务提供商 (WSP) url 来获取p0 pressure at sea level. 我已成功获取值但不理解返回的值。

WSP 网址:http ://avdata.geekpilot.net/

这是东京国际机场的示例输出(http://avdata.geekpilot.net/weather/HND)

0 投票
3 回答
2074 浏览

android - Android:TYPE_PRESSURE 的 SensorEvent 值在哪里?

我已阅读此文档-> SensorEvent

然后,我发现为了获取 TYPE_PRESSURE 传感器类型的值,我需要监听 SensorEventListener。

问题是缺少 TYPE_PRESSURE 传感器值的文档。有人知道吗?

更新 1 我之前创建了可能与此问题相关的问题。您是否也看看这些链接:获取海拔值SensorManager.getAltitude

0 投票
1 回答
1418 浏览

android - 用 ACTION_USER_PRESENT 替换 ACTION_SCREEN_ON?

我有一个长期运行的服务来监听传感器输入。为了节省电池电量,我在 ACTION_SCREEN_OFF 上停止了传感器的采样,并在 ACTION_SCREEN_ON 上再次启动它。

但是,通常我只是打开手机以快速浏览锁定屏幕上的时钟(以检查当前时间),然后再次将其关闭而不解锁手机。在这种情况下,没有理由启动传感器只是为了立即关闭然后再次关闭。

因此,我尝试在我的广播监听器中用 ACTION_USER_PRESENT 替换 ACTION_SCREEN_ON。除了一种特殊情况外,这很好用:当屏幕关闭并且我立即按下电源按钮(或主页按钮)时,将跳过锁定屏幕。然后永远不会收到 ACTION_USER_PRESENT,只有 ACTION_SCREEN_ON。

有没有办法让我的广播接收器在收到 ACTION_SCREEN_ON 后知道屏幕锁定是否处于活动状态并期待稍后出现 ACTION_USER_PRESENT?或者如果锁定屏幕被跳过,不等待 ACTION_USER_PRESENT 并继续并立即重新开始采样?

0 投票
1 回答
478 浏览

android - Android:单元测试:如何使用 SensorManager 创建单元测试?

我有简单的 Jar 项目,由 android 应用程序引用。然后,我有 Functions.java 用于我想要创建单元测试类的常用函数。

以下是 Functions.java 中的示例函数:

感谢任何有关正确方向的指导。