华为手环 BLE 直连
通过 Web Bluetooth API 直接连接华为手环,读取心率、电池、设备信息等标准蓝牙服务数据。 无需账号、无需安装APP,浏览器直连,数据仅本地存储。
⚠️ 重要说明:华为手环(如手环4 Pro D71)使用FE86私有协议,不支持标准蓝牙心率/电池服务。 需要完成4步握手认证才能读取数据。本功能基于Gadgetbridge开源项目逆向实现。
查看方法:手环 → 设置 → 关于 → 蓝牙地址
格式:12位十六进制,用冒号分隔,如 C4:B3:01:D8:AC:36
加密算法:AES-128-CBC + HMAC-SHA256。
所有密钥仅在本地生成,不会上传到任何服务器。
详细日志请查看「BLE调试台」页面。
以下功能部分基于标准GATT服务,部分基于华为私有协议。私有协议功能可能需要配对认证后才能使用。 不支持的功能会灰显并说明原因。
⚠️ 私有协议功能,需要华为账号认证
⚠️ 私有协议功能,需要华为账号认证
通过华为 Health Kit API 获取更完整的健康数据。需要注册华为开发者账号并配置 OAuth 2.0。
📝 接入指南
- 注册华为开发者账号
- 创建 Health Kit 应用,获取 Client ID
- 配置 OAuth 2.0 回调地址
- 部署后端代理服务(API 不能直接前端调用)
- 在下方配置 API 地址和 Client ID
连接设备后自动发现所有 GATT 服务和特征值
将本地存储的健康数据导出为各种格式,方便备份和进一步分析。
从备份文件恢复数据
所有数据仅存储在浏览器本地 IndexedDB 中,不会上传到任何服务器。
• Chrome(桌面端和安卓)
• Microsoft Edge
• Opera
• Bluefy(iOS)
• WebBLE(iOS)
不支持的浏览器:
• Safari(macOS 和 iOS)
• Firefox
• 大部分国内浏览器
注意:Web Bluetooth 必须在 HTTPS 环境下才能使用。
所有数据仅存储在你的浏览器本地 IndexedDB 中,不会发送到任何服务器。 BLE 连接是浏览器直接与手环建立的,数据不经过任何第三方。 你可以随时导出或清空所有数据。
本工具是纯前端应用,没有后端服务器,也没有任何数据收集功能。
1. 确保手环已开机且在附近(10米内)
2. 确保手环没有连接其他设备(如手机)
3. 开启"扫描所有设备"选项,手动选择
4. 重启手环蓝牙(重启手环)
5. 确保浏览器有蓝牙权限
6. 部分机型(如D71)广播名称特殊,需要全量扫描
华为手环4 Pro(D71)用户建议开启"扫描所有设备"选项。
• 心率(实时和历史)
• 步数、距离、卡路里
• 睡眠数据(深睡、浅睡、清醒)
• 血氧饱和度
• 压力值
• 运动记录
• 身高体重
需要注册华为开发者账号并配置 OAuth 2.0 授权。 由于 API 限制,需要部署后端代理服务。
✅ 标准GATT服务(可用):
• 时间同步(Current Time Service)
• 找手环/立即提醒(Immediate Alert Service)
⚠️ 华为私有协议(受限):
• 天气同步
• 星历数据同步
• 闹钟设置
• 步数目标设置
私有协议功能需要华为账号认证和配对加密,网页端无法完全实现。 我们会持续研究协议,尽可能支持更多功能。
已确认情况:
• 设备信息服务(180A):✓ 正常可用
• 标准心率服务(180D):✗ 不存在
• 标准电池服务(180F):✗ 不存在
• 私有协议服务(FE86):✓ 存在
原因:
心率、电池等健康数据都通过FE86私有服务传输,需要先进行认证和加密配对。
认证需要华为账号ID(17位数字),且协议有加密保护。
当前状态:
• 设备信息可正常读取
• 私有协议已检测并初始化
• 心率/电池数据需要认证后才能读取
• 正在研究协议,争取支持更多功能
各款华为手环的功能支持情况。✓ 表示标准服务支持,△ 表示部分支持/私有协议,✗ 表示不支持。
| 机型 | 心率 | 电池 | 设备信息 | 时间同步 | 找手环 | 天气 | 星历/GPS | 闹钟 |
|---|---|---|---|---|---|---|---|---|
| 手环 4 Pro (D71) | △ 私有 | △ 私有 | ✓ | △ | △ | △ | △ 有GPS | △ |
| 手环 5 / 5 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 5 Pro | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 6 / 6 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 6 Pro | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 7 / 7 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 7 Pro | ✓ | ✓ | ✓ | △ | △ | △ | △ 有GPS | △ |
| 手环 8 / 8 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 8 Pro | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 9 / 9 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 10 / 10 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
| 手环 11 / 11 NFC | ✓ | ✓ | ✓ | △ | △ | △ | ✗ | △ |
✓ 标准支持:基于标准 BLE GATT 服务,所有机型都支持,无需认证。
△ 私有协议:基于华为私有协议,需要华为账号配对认证才能使用。网页端受限于浏览器安全机制,部分功能可能无法完全实现。
✗ 不支持:该机型硬件不支持此功能。
⚠️ 注意:私有协议功能的支持情况可能因固件版本而异。我们会持续研究和更新。