我确实进行了搜索,但找不到答案;在解释android加速度计值时,如何将这些值转换为沿X/Y/Z轴的真实世界电话翻译?我希望这是有道理的-我只是无法理解我们如何摆脱引力?我们需要吗?我在想,如果我们采用加速度计返回的3Dvector的大小-它将是9.8或更大,然后我们减去重力以获得实际加速度大小。但是,由于手机的运动+分布在所有3个轴上的重力方向,加速度计事件返回的vector是否会不准确...请帮忙!谢谢 最佳答案 免责声明:我不知道任何Android细节,它也可能是特定于手机的。我只是从物理学背景说起。您需要将加速度积分到速度,
我使用StackOverflow的一些建议编写了一个加速度计应用程序(用于学习目的)。一切正常,但我在代码中收到“SensorManager.DATA_X已弃用”消息作为警告://setupthetextviewsfordisplayingtheaccelerationsmAccValueViews[SensorManager.DATA_X]=(TextView)findViewById(R.id.accele_x_value);mAccValueViews[SensorManager.DATA_Y]=(TextView)findViewById(R.id.accele_y_value
我正在Android中编写一个应用程序,它需要知道后置摄像头相对于地平线指向的角度,而不是相对于其最后位置的角度。我读过的关于指南针和加速度计的所有定义都没有说我可以做到这一点。完全有可能做到这一点吗? 最佳答案 你应该使用加速度计。想法如下,在静态相机中,作用在相机上的唯一力(由加速度计看到)是重力。这应该能够给你哪个方向是“向下”。然后您需要做的是计算相机所面对的方向(这是一个常数,取决于加速度计的朝向)与重力方向之间的角度。两个vector的点积(http://en.wikipedia.org/wiki/Dot_product
我正在尝试让智能手机移动距离以防止用户移动,例如每50厘米。知道我不能使用步数检测是否可以这样做,因为我会将智能手机放在4轮设备中,而且我不会有GPS数据,因为我在室内进行实验。我已经实现了仅使用加速度计计算距离的代码,但我发现错误非常重要,加速度计的数据波动很大。你能不能通过一些建议或引用来帮助我 最佳答案 不,你不能。移动设备的内部传感器噪音很大。要从加速到某个位置,您必须积分两次。然后噪音会变得太大,因此你的位置会漂移。有一个interestingGoogleTechTalksonthissubject这将比我更好地解释这个主
我们正在开发一款依靠加速度计实现某些功能的Android应用。我想知道依赖加速度计的存在而不为不支持它的设备(例如按钮)提供替代UI选项有多安全。我的观察是大多数“智能手机”Android都支持它。我说得对吗?如果有人能指出所有Android设备的一些数据或统计信息,那就太好了。 最佳答案 我个人从未见过没有加速度计的Android设备。互联网似乎也同意这一点:Link1Link2 关于android-Android设备中的加速度计得到多广泛的支持?,我们在StackOverflow上找
我正在开发一款Android游戏,我想弄清楚用户是将设备向左倾斜还是向右倾斜(类似于将人左右移动时TempleRun的工作原理)。我已经阅读了许多教程和示例并制作了示例应用程序,但我从陀螺仪和加速度计返回的数据量非常大。我是否需要两组硬件来确定用户是否倾斜设备以及朝哪个方向倾斜?我当前的应用程序正在检测每一个轻微的运动,这显然是不正确的。publicclassMainextendsActivity{privateSensorManagermSensorManager;privatefloatmAccel;//accelerationapartfromgravityprivatefloa
我找到了几个例子,我知道如何使用加速度计和磁力计获得罗盘方位。问题是我不知道为什么要使用这两个传感器。有人可以向我解释吗?谢谢 最佳答案 对磁力计的需求非常明显。指南针(即使是真正的指南针)显示为“北”的确实是磁场的方向。因此,您的Android需要以某种方式测量磁场,以便知道在哪个方向绘制箭头。根据加速度计,您需要知道加速度计不仅用于测量加速度,正如其名称所暗示的那样,它们还可以告诉您重力指向的方向。没有一个,您的设备将不知道“向下”在哪里。例如,每部能够自动旋转屏幕的智能手机都需要一个加速度计。现在为什么需要两个指南针?因为在确
我正在将数据从加速计传感器保存到数据库,但我想在一个单独的线程中进行。我试图在Internet上搜索它,但大多数都使用相同的线程。我尝试过的事情:SenSorEventListenersel;ThreadA=newThread(){publicvoidrun(){sel=newSensorEventListener(){@OverridepublicvoidonSensorChanged(SensorEventevent){//TODOAuto-generatedmethodstubdoubleAcceleration,x,y,z;x=event.values[0];y=event.v
我必须从我的Android手机收集加速度计数据,所以我编写了一个小程序来完成这项工作。经过一些测试,我发现我的NexusS加速度计的速率在手机处于Activity状态时始终每秒50个值,而在手机处于sleep状态时每秒6个值(使用PARTIAL_WAKE_LOCK),无论我要求什么速率(NORMAL、UI、GAME或FASTEST).所以我决定安装一个在互联网上找到的应用程序来测试加速度计的速率:http://samoht.fr/tuto/accelerometers-frequency-on-android-with-code但我遇到了同样的“错误”:无论我要求的速率如何,当手机处于
我遇到了一个问题,即我的加速度计在屏幕关闭时无法工作。当我关闭屏幕时,logcat显示标签:“AK8973”和解密:“compassoff”屏幕关闭时,有没有办法让我的加速度计保持清醒?我的平台是带有HTCDesire的Android2.2。非常感谢您的帮助! 最佳答案 Isthereawaytokeepmyaccelerometerawakewhenthescreenoff?充其量,您可以尝试持有WakeLock。但是,如果您的用户觉得您在浪费他们的电池,他们会生您的气。我也不确定这是否有效。