不同设备的Android方向传感器是否不同?

3
我正在开发一个使用方向传感器获取设备旋转信息(以便滚动球)的Android游戏。我有两个设备用于测试应用程序,一个是三星Infuse手机,另一个是华硕Eee Pad Transformer TF101平板电脑。
在这两个设备上,应用程序都在横屏模式下运行。问题在于,在Eee Pad上,设备处于横向(横屏模式)时测量方向,而无论我做什么,在Infuse上都是竖直(竖屏模式)测量方向。这导致当我将Infuse向左倾斜时,球向左移动,但当我将Eee Pad向左倾斜时,球会向上或向下移动。
我可以切换方向角度,使它们移动到另一边,但这只适用于其中一个。有什么想法可以解决这个问题吗?
是的,我正在使用已弃用的TYPE_ORIENTATION,而不是getOrientation()方法。我尝试过设置它,但从未正确地工作过,并且它总是输出非常奇怪的值,所以我坚持使用了已弃用的方法。如果切换是否会修复此问题?如果是,有人可以链接我实现这一点的资源吗?

2
是的,我正在使用已弃用的TYPE_ORIENTATION——也许这就是你的问题……? - Mitch Wheat
你知道有什么资源可以做到这一点吗?Android文档在这方面非常模糊,我找不到一个好的例子。 - natewelch_
1个回答

4

谷歌文档明确指出传感器坐标系是相对于设备的默认方向而言。该描述提到了getRotation()remapCoordinateSystem()函数,您可以使用它们来进行适当的调整。


谢谢。我认为这帮助我解决了问题。我仍在排除故障,但它正在逐渐变得更好,非常感谢你。 - natewelch_
2
@Nate,你能发一下使用remapCoordinateSystem()的可用代码吗?谢谢。 - Lucy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接