Android Moto 360中的磁场传感器未发送更新

Android Moto 360中的磁场传感器未发送更新,android,wear-os,moto-360,Android,Wear Os,Moto 360,我不知道其他人是否也经历过这种情况。当连接到Moto 360(Android Wear)上的Sensor.TYPE_MAGNETIC_FIELD Sensor时,我没有得到任何更新 以下代码适用于所有工程: SensorManager sm = (SensorManager) this.getSystemService(Context.SENSOR_SERVICE); Sensor magnetic = sm.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD

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

以下代码适用于所有工程:

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}
但在将侦听器注册到此传感器后,不会触发任何事件


其他传感器(如加速计和陀螺仪)工作正常。

你能试着稍微摇晃一下设备,看看罗盘读数是否显示出来吗。你也可以试着把它移到另一个区域(磁干扰较少)。。也许可以做一些数字8来校准设备。

你能试着摇晃一下设备,看看罗盘读数是否显示出来吗。你也可以试着把它移到另一个区域(磁干扰较少)。。还可以使用数字8校准设备。

您想注册一个侦听器,并让该侦听器在返回值时读取这些值:

sm.registerListener(this, magnetic, SensorManager.SENSOR_DELAY_NORMAL);
然后实现侦听器并获取值(例如,类似这样的内容):


您希望注册一个侦听器,并让该侦听器在返回值时读取这些值:

sm.registerListener(this, magnetic, SensorManager.SENSOR_DELAY_NORMAL);
然后实现侦听器并获取值(例如,类似这样的内容):


我怀疑这是一个比360更大的问题。我刚收到LG手表R,指南针坏了。有一个带指南针的普通表面,它总是指向同一个方向。我为C | Geo安装了一个geocaching扩展,它应该指示到目标的距离和方位,它总是指向12:00。
开发人员的说明表明,这是SDK的一个已知问题,他在未来开发的计划功能中列出了这一要点:

全面实施对手表罗盘的支持(目前不可能 由于Android磨损(SDK问题)

发件人:


因此,这似乎是SDK的一个已知问题/限制

我怀疑这是一个比360更大的问题。我刚收到LG手表R,指南针坏了。有一个带指南针的普通表面,它总是指向同一个方向。我为C | Geo安装了一个geocaching扩展,它应该指示到目标的距离和方位,它总是指向12:00。
开发人员的说明表明,这是SDK的一个已知问题,他在未来开发的计划功能中列出了这一要点:

全面实施对手表罗盘的支持(目前不可能 由于Android磨损(SDK问题)

发件人:


因此,这似乎是SDK的一个已知问题/限制

我也有同样的问题。但前提是这款手表与moto x 2013(kitkat 4.4.4)搭配使用。对于华硕padfone 2(kitkat 4.4.2)和nexus 5(棒棒糖5.1),我没有问题。 例如,我尝试过这个应用程序:

对于moto 360和nexus 5,moto 360和moto x 2013都能正常工作。
我不知道为什么,但我想下一次Android wear的更新会解决这个问题。

我也有同样的问题。但前提是这款手表与moto x 2013(kitkat 4.4.4)搭配使用。对于华硕padfone 2(kitkat 4.4.2)和nexus 5(棒棒糖5.1),我没有问题。 例如,我尝试过这个应用程序:

对于moto 360和nexus 5,moto 360和moto x 2013都能正常工作。
我不知道为什么,但我想Android wear的下一次更新会解决这个问题。

你能解释一下为什么这会有帮助吗?我已经尝试了以上所有方法(以及更多方法,比如使用未校准的磁场),但似乎没有什么能“唤醒”指南针。有没有可能在固件中禁用了它?你能解释一下为什么这会有帮助吗?我已经尝试了以上所有方法(以及更多方法,比如使用类型_MAGNETIC_FIELD_UNCALIBRATED),但似乎没有什么能“唤醒”指南针。有没有可能它在固件中被禁用了?是的,我有监听器,但在Moto 360上从未调用过。对于其他传感器(陀螺仪、加速计),调用侦听器。在一部普通的android手机上,监听器也会被呼叫。我可以验证这不仅仅是OP有这个问题。有人能从Moto360上获得指南针更新吗?是的,我有监听器,但Moto360上从未调用过。对于其他传感器(陀螺仪、加速计),调用侦听器。在一部普通的android手机上,监听器也会被呼叫。我可以验证这不仅仅是OP有这个问题。有人能从Moto 360获得compass更新吗?有趣的是,我的文档会作为源链接到我一直在关注的同一个线程中,试图找到解决此问题的方法:p我所说的“由于Android Wear SDK问题而不可能”是指我在使其工作时遇到问题,但这也是我的第一个应用程序,所以我可能做错了。我不知道这是否是AOSP内部的“已知问题”。我在论坛上读到一些人的帖子,他们说他们遇到了Android Wear compass应用程序,但我自己没有尝试过任何一个。有点可笑,我的文档会被链接成一个源,在我一直在关注的同一个线程中,试图找到解决这个问题的方法:p我的意思是什么“由于Android Wear SDK问题,不可能“是因为我在使用上遇到了问题,但这也是我的第一个应用程序,所以我可能会做错。我不知道这是否是AOSP内部的“已知问题”。我在论坛上读到一些人的帖子,他们说他们遇到了Android Wear compass应用程序,这些应用程序在某种程度上确实有效,但我自己没有尝试过。