繁体   English   中英

Android指南针在不同的手机上读取不同的值?

[英]Android Compass Reading Different Values On Different Phones?

您好:)我正在开发一个使用指南针和位置在位置方向绘制箭头的应用程序。 我的问题是,当我在模拟器上运行代码时,所有箭头都指向正确的方向,而当我将模拟器的方向更改为横向时,所有箭头仍然正确。 但是,当我在Nexus One上运行相同的应用程序时,当手机垂直时,箭头都是正确的,但是当手机变成横向时,所有箭头都会错开90度。 它保持电话的“顶部”作为对North的引用。 因此,您必须针对电话的方向校正指南针。 这会在所有真实电话上发生吗,而仿真器是不同的吗? 还是只是Nexus One? 谢谢 :)

根据我对当前指南针工作方式的了解,应该始终使用手机的“顶部”或“默认方向”来获取正确的读数。 这可能与早期版本的android不同。 据说,然后由开发商来补偿屏幕方向以通过方向变化来代表真实的北方。 加速度计也是如此,其轴保持基于默认屏幕方向(因此,对于大多数手机而言,它是纵向的,但平板电脑中的大多数是横向的)。 我不愿向您介绍sdk,但是此链接第一段说明: http : //developer.android.com/reference/android/hardware/SensorEvent.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM