wear-os - 我可以从 WearOS 应用程序将锻炼数据记录到 GoogleFit 吗?
问题描述
我正在制作一个健身 wearOS 应用程序。我想将使用该应用程序完成的锻炼记录到 GoogleFit。
WearOS有没有办法做到这一点?
我使用 HealthServices 开始锻炼:
suspend fun startExercise() { val dataTypes = setOf( DataType.HEART_RATE_BPM, DataType.LOCATION ) val aggregateDataTypes = setOf( DataType.DISTANCE, DataType.TOTAL_CALORIES ) val config = ExerciseConfig.builder() .setExerciseType(ExerciseType.RUNNING) .setDataTypes(dataTypes) .setAggregateDataTypes(aggregateDataTypes) .setShouldEnableAutoPauseAndResume(false) .setShouldEnableGps(true) .build() HealthServices.getClient(this /*context*/) .exerciseClient .startExercise(config) .await() }
(代码来自此示例https://developer.android.com/training/wearables/health-services/active#start)
我期待如果我开始/结束锻炼,HealthServices
它会自动将数据同步到 GoogleFit(Apple 使用 HealthKit 执行此操作)。
那么,我可以从 WearOS 应用程序将锻炼数据记录到 GoogleFit 吗?
解决方案
要添加到 Yuri 的评论中,这是不可能自动执行的,这SessionClient
可能是您手动执行此操作所需的。流程将是:
- 使用健康服务收集数据
- 转换
- 插入会话
SessionClient
在Google Fit 文档中插入会话片段是一个相关示例,因为它既设置会话类型(在本例中为运行),然后还添加基础数据(而不是单独使用HistoryClient
)。
推荐阅读
- javascript - 我的自定义按钮在@react-google-maps/api 中全屏显示
- html - 为什么 html 实体在我的 Ubuntu Crome 浏览器中出现格式错误,而在 Windows 中是完美的?
- c++ - 使用带有非 utf-8 字符的 `Google Protobuf 3` `Any` 类型,但反序列化时出现错误
- html - 如何制作它在 svg 中的响应路径
- java - Exchanger 的实际用例是什么?
- spring - 在 Spring JPA 中限制并发查询
- rust - TryInto trait 要求更多类型注释,即使所有注释都已到位
- google-places-api - 在 Google Places API(JS 或 REST API,不是 Android)中获取文本描述
- css - 使用 VueJS 自定义工具提示的 CSS 问题
- node.js - 参数未在 discord.js v12 中完全显示