Android 索尼智能手表3(SWR50)不再返回Sensor.TYPE_线性加速度

Android 索尼智能手表3(SWR50)不再返回Sensor.TYPE_线性加速度,android,sony,sony-smartwatch,Android,Sony,Sony Smartwatch,我正在写一个应用程序,它使用Sensor.TYPE\u LINEAR\u加速度 mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION); 直到最近,这才开始工作,但是每个SensorEvent现在都返回一个值浮点数组,其中包含:NaN,NaN,NaN 我在LG手表上尝试了相同的代码,它返回的值与我预期的一样 SWR50上的软件版本为: Android Wear 1.1.1.1929530

我正在写一个应用程序,它使用Sensor.TYPE\u LINEAR\u加速度

mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION);
直到最近,这才开始工作,但是每个SensorEvent现在都返回一个值浮点数组,其中包含:NaN,NaN,NaN

我在LG手表上尝试了相同的代码,它返回的值与我预期的一样

SWR50上的软件版本为:

Android Wear 1.1.1.1929530

谷歌播放服务7.5.71(1955121-534)

安卓操作系统5.1.1

请注意,Sensor.TYPE_加速计返回值(已在开发者选项的制造商(菜单启动器)应用程序中确认),因此加速计似乎没有损坏


索尼有人能证实这个问题吗?否则,如果手表坏了,我可能需要买一块新手表。

听起来很奇怪,它会突然停止工作

  • 您最近安装过固件更新吗
  • 你试过用电动自行车骑手表吗
  • 你试过重新设置工厂吗

  • 所以看起来像是传感器。重力是个问题。它在重新启动后返回有效结果,然后下次我运行应用程序时返回NaN。大概线性加速度是用重力矢量来计算的

    如果我不得不猜测的话,我会说一些虚假的值被输入到计算重力矢量的低通滤波器中,一旦发生这种情况,它将永远不会恢复

    我猜,如果它是一个随机值,那么偶尔它可能是有效的,这就是为什么它偶尔看起来是有效的


    我想解决的办法是读取Sensor.TYPE_加速计值,然后进行低通滤波以计算重力

    我将我的Sony smart-watch-3 SWR50固件升级为以下版本,我的应用程序不再收到Sensor.TYPE_LINEAR_ACCELERATION的回调

    Android Wear 1.4.0.2715035

    谷歌播放服务8.7.02(2624717-534)

    安卓操作系统6.0.1


    构建编号:MEC24H

    1。是,在I|O.2期间更新到5.1.1。对这似乎起到了作用,尽管我仍然得到了一些NaN。在6.0.1升级之后,这个问题仍然存在。我还从TYPE_LINEAR_ACCELERATION得到了NaN(没有实际值)。Android Wear 1.3.0.2160025 Google Play services 8.4.89(2428711-534)Android操作系统5.1.1在我重新启动手表后,它似乎工作正常-但每次运行应用程序之后,我都只会收到NaNs。在将sony-smartwatch-3升级到6.0.1后,我今天开始面临同样的问题