Android方向传感器的相关问题

android的方向传感器Sensor.TYPE_ORIENTATION(已过时,实测新方法得到的结果和旧方法一致)

三个值分别表示:

value[0] 方向角,用来测方向

value[1] 垂直方向夹角,抬起手机上下两侧该值改变

value[2] 水平方向夹角,抬起手机左右两侧该值改变

这三个值按理说是可以完全还原出手机在3D空间中的方向姿态的。但是小米品牌的部分设备该值反常。

使用华为设备测试该传感器参数。首先手机水平放置,value[1],value[2]基本为0,抬起手机右侧,value[2]增加,经过90度这个临界点后value[2]又开始减少,此时,value[0]方向角发生一个100多度的突变。

使用小米设备,重复该操作,经过临界点后,value[0]方向角未发生任何变化。

小米设备的方向传感器参数反常了,还原出来的3D姿态东南西北方向不对。

 

最开始我认为是不是小米把3个方向角的值进行了某些换算,所以进行控制变量法测试value[1]和value[2]的值。测试发现,华为设备和小米设备同步操作下,垂直方向夹角value[1]和水平方向夹角value[2]无论怎么变化都是一致的。这说明,小米设备只对方向角value[0]进行了偏移矫正。

这真的就很难受了,相当于要单独给小米设备调整这个参数,并且还不清楚是不是所有的小米设备方向传感器参数都是如此。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值