2014-10-04 73 views
2

我不知道其他人是否也经历过这种情况。当连接到Moto 360(Android Wear)上的Sensor.TYPE_MAGNETIC_FIELD传感器时,我没有收到任何更新。Moto 360中的磁场传感器不发送更新

下面的代码的所有作品:

SensorManager sm = (SensorManager) this.getSystemService(Context.SENSOR_SERVICE); 
Sensor magnetic = sm.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD); 
Log.i("Wear", "magnetic: " + magnetic); 

与输出:

I/Wear (17471): magnetic: {Sensor name="Compass Sensor", vendor="Motorola", version=1, type=2, maxRange=4900.0, resolution=0.15, power=0.45, minDelay=40000} 

但注册一个监听器,该传感器后,没有事件从来没有这样激动。其他传感器(如加速度计和陀螺仪)工作正常。

回答

0

你可以尝试晃动一下设备,看看指南针读数是否出现。你也可以尝试将它移动到另一个区域(用较少的磁干扰),也可以做一些数字来校准设备。

+0

你能解释为什么这会有所帮助吗? – emsworth 2014-10-06 14:53:44

+0

我已经尝试了所有上述(和更多,如使用TYPE_MAGNETIC_FIELD_UNCALIBRATED),但似乎没有“唤醒”指南针。它可能在固件中被禁用? – cjm 2014-10-13 19:43:42

-1

要注册一个侦听器,并有听众读值时,返回他们:

sm.registerListener(this, magnetic, SensorManager.SENSOR_DELAY_NORMAL); 

然后实现监听和获取值(如:是这样的):

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
* sensors 
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ 
@Override public void onSensorChanged(SensorEvent event) { 

    if(event.sensor.getType() == magnetic.getType()) { 
     float mag = event.values[0]; 
    } 
} 

@Override public void onAccuracyChanged(Sensor sensor, int accuracy) { 

} 
+0

是的,我确实有听众,但它从来没有在Moto 360上被调用。对于其他传感器(陀螺仪,加速度计),监听器被调用。在通用的android手机上,监听器也被称为 – 2014-10-18 15:08:56

+0

我可以验证它不只是OP有这个问题。有没有人能够从Moto 360获得指南针更新? – cjm 2014-10-20 20:07:15

0

我怀疑这是一个比360更大的问题。我刚收到LG Watch R,指南针不起作用。有一个股票表盘有一个指南针,它总是指向同一个方向。我为C | Geo安装了一个geocaching扩展,它应该指示距离和方向,并且它总是指向12:00。从开发商
说明指出,这是一个已知的问题SDK,在那里,他列出了未来的发展计划中的功能这个子弹:

完全是由于Android的落实手表罗盘的支持(目前无法 穿戴SDK问题)。

来自:https://github.com/culmor30/cgeo-wear

如此看来,这是SDK的一个已知的问题/限制。

+0

有趣的是,我的文档将作为源代码链接在同一个线程中我一直在观察以尝试找到此问题的解决方案:p 我的意思是“由于Android Wear SDK问题而无法实现”是我的工作有问题,但这也是我的第一款Wear应用,所以我可能会做错。我不知道这是否是AOSP内的“已知问题”。 我读过论坛上的帖子,人们说他们遇到过Android Wear指南针应用程序,这些应用程序以某种方式工作,但我没有为自己尝试过任何一种。 – cjm 2015-01-17 11:58:36

0

我有同样的问题。但只有当手表与moto x 2013搭配使用时(kitkat 4.4.4)。随着华硕padfone 2(kitkat 4.4.2)和nexus 5(棒棒堂5.1)我没有问题。 对于为例我试过这个程序: https://play.google.com/store/apps/details?id=jack.campbell.messive.compass

随着摩托360和Nexus 5工程与moto360和极限摩托2013不工作。 我不知道为什么,但我想随着Android磨损的下一个更新将解决。

相关问题