kotlin 佩戴OS 3:从血氧饱和度传感器读取数据

wecizke3  于 2023-03-24  发布在  Kotlin
关注(0)|答案(2)|浏览(213)

我正在为Wear OS 3开发一个应用程序,该应用程序需要按需读取血氧饱和度数据***。官方Android文档暗示您可以使用Health Services执行此操作,使用数据类型VO2_MAX*https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType
然而,没有读取数据,传感器也不可用。我检查了SPO 2传感器是否正常工作,因为我可以使用智能手表中默认安装的健康应用程序(我使用的是化石Gen 6和Wear OS 3)
我使用的是sample app provided,稍微修改了一下读取数据类型VO2_MAX。代码摘录如下。是否有其他访问此传感器的方法?
谢谢大家!

suspend fun hasHeartRateCapability(): Boolean {
        val capabilities = measureClient.getCapabilitiesAsync().await()
        return (DataType.VO2_MAX in capabilities.supportedDataTypesMeasure)
    }
is MeasureMessage.MeasureData -> {
                    val vo2 = it.data.last().value
                    Log.d(TAG, "Data update: $%")
                    _voxMax.value = vo2
                }
xqk2d5yq

xqk2d5yq1#

血氧饱和度与VO2 max不同。VO2 max是您身体在运动时使用的氧气量。SPO2是血氧饱和度。使用健康服务,我们只能访问VO2数据类型,而不能访问SPO2。可能可以使用Google fit API

cidc1ykv

cidc1ykv2#

使用Google Fit API(将被弃用,建议使用Google Health Connect)的问题是,它允许访问数据,但您无法按需触发新的传感器阅读。
是否有其他方法通过Wear OS按需读取血氧饱和度传感器数据(使用Wear OS手表,例如集成该传感器的化石gen 6?
再次感谢!

相关问题