把 OPPO 健康(国行版)的数据同步进 Android 原生 健康数据共享(Health Connect)。
⚠️ 本版变更:包名
包名从 io.github.ohsync 改为 io.github.bqj6666.ohsync。
包名变了就是另一个应用,所以升级时:
- 先卸载旧版再装本版
- 旧版写入 Health Connect 的数据仍留在原处,但归属显示为旧应用;本版会在自己名下
重新写入一份 - 想清掉旧数据:装回旧版点一次「清除本应用写入的数据」,或直接在 Health Connect 的
「数据和访问权限」里删除那个来源 - 设置与配对口令不会迁移,本版是全新配置
同步内容
- 步数、距离、活动卡路里、心率、血氧、血压、体重
- 睡眠,含深睡 / 浅睡 / 快速眼动 / 清醒分段
功能
- 自动同步间隔可选(仅手动 / 15 分钟 / 30 分钟 / 1 小时 / 3 / 6 / 12 小时 / 每天),默认 1 小时
- 回填时间范围可选,默认最近 3 个月
- 自动同步走增量,只推上次之后的新数据
- 重复推送幂等,不会产生重复记录
保活(实测结论)
| 方案 | 结果 |
|---|---|
| 普通服务 + 读取端广播唤醒 | 广播被系统入队,但不执行 |
| 普通服务 + AlarmManager 兜底 | 闹钟到点没有反应 |
| 前台服务 | 进程稳定存活 ✅ |
广播与闹钟拉不起 cached 应用是 Android 本身的限制。通知为静音(无声音、无振动、
无角标),可在设置里关闭。
资源占用实测:空闲时 CPU 约 每小时 1.8 秒,内存约 59 MB。
安装
需要 Root + LSPosed,以及可用的 Health Connect。
- 安装本 APK,先打开一次 OHSync
- 在应用内点「去授权」,勾选要授予的健康数据类型
- 在 LSPosed 里启用 OHSync,作用域只勾 OPPO 健康
- 打开一次 OPPO 健康
- 回到 OHSync 点「立即同步」
注意:卸载应用会让 LSPosed 的启用记录与作用域被级联删除,重装后需在 LSPosed 里
重新启用,或重启设备让它重新加载。用同签名覆盖安装(pm install -r)不会丢。
每次安装更新,Health Connect 也会撤销本应用的全部健康权限,重新授权即可。
详见 README。