更新记录
1.0.3(2026-07-29)
发版
1.0.2(2026-07-29)
发版
1.0.1(2026-07-29)
发版
查看更多平台兼容性
uni-app(5.13)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | √ | √ | √ |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - | - |
uni-app x(5.13)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
AI Health
ai-health 是一个面向 uni-app 与 uni-app x 的 UTS API 插件,通过 iOS HealthKit 和 Android Health Connect 访问系统健康数据。插件只在调用方明确请求并获得用户授权后工作,数据在设备本地处理。
平台要求
| 平台 | 最低版本 | 数据源 | 说明 |
|---|---|---|---|
| iOS | iOS 15 | Apple HealthKit | 需在 Apple Developer 后台为 App ID 开启 HealthKit,并重新生成描述文件 |
| Android | Android 8 / API 26 | Health Connect | Android 13 及以下需安装“健康数据共享”,Android 14 起由系统提供 |
HBuilderX 最低版本为 4.81。首次加入插件或修改原生配置后,请制作自定义基座或执行云打包。
Android 依赖固定为 Health Connect 1.1.0-beta01,以兼容 HBuilderX 5.07 云端的 compileSdk 35。1.1.0-beta02 及更高版本要求 compileSdk 36,在当前云打包环境中会失败。
快速开始
import {
getHealthCapabilities,
requestHealthAuthorization,
queryHealthData
} from "@/uni_modules/ai-health"
const capabilities = getHealthCapabilities()
if (capabilities.available) {
requestHealthAuthorization({
readTypes: ["stepCount", "heartRate"],
success: () => {
queryHealthData({
type: "stepCount",
startTime: Date.now() - 24 * 60 * 60 * 1000,
endTime: Date.now(),
aggregation: "sum",
success: (result) => console.log(result.aggregateValue),
fail: (error) => console.log(error.errMsg)
})
},
fail: (error) => console.log(error.errMsg)
})
}
所有时间均为毫秒时间戳。查询默认最近 24 小时、最多 200 条,limit 取值范围为 1 到 1000。
API
getHealthCapabilities():同步返回当前平台、服务可用性及支持的读写类型。getHealthAuthorizationStatus(type):同步返回写权限状态,0未确定、1拒绝、2已授权。Android 返回对应类型任一读写权限的状态。requestHealthAuthorization(options):请求指定类型的读写权限。queryHealthData(options):查询明细,或使用sum、average、minimum、maximum统计。saveHealthData(options):批量写入健康记录。deleteHealthData(options):删除当前 App 在时间区间内写入的指定类型记录。
iOS 出于隐私保护不会向 App 披露健康数据的读取授权状态。因此授权结果中的 iOS 读取类型表示系统授权流程已完成;实际是否有读取权限应以查询结果为准。
数据类型
iOS 支持:步数、步行跑步距离、骑行距离、心率、静息心率、呼吸频率、血压、体脂、体重、BMI、身高、去脂体重、活动/静息能量、睡眠、体温、血氧、血糖、步长、锻炼时间、最大摄氧量、HRV、游泳划水、爬楼、跑速、骑行功率/踏频和锻炼记录。
Android 支持:步数、距离、心率、体重、身高、体脂、血氧、血糖、血压、活动能量和睡眠。请先调用 getHealthCapabilities(),不要假设两个平台支持完全相同的数据类型。
血压写入时,bloodPressureSystolic 的 value 是收缩压,secondaryValue 是舒张压;使用 bloodPressureDiastolic 时两者相反。睡眠的 category 使用 HealthKit/Health Connect 的阶段值;未设置时按普通睡眠处理。
上架配置
iOS
插件已包含 Info.plist、UTS.entitlements、PrivacyInfo.xcprivacy 和 HealthKit 系统库声明。开发者仍需在 Apple Developer 中为宿主 App 的 Identifier 开启 HealthKit,并使用重新生成的签名描述文件。App Store Connect 隐私问卷应按宿主 App 的真实数据用途填写。
Android
插件已声明所支持类型对应的 Health Connect 权限、权限请求页和权限用途说明页。发布到 Google Play 前,宿主 App 必须提供公开隐私政策,并在 Play Console 的“健康应用”表单中声明实际使用的数据类型和用途。业务不使用的类型应从插件的 AndroidManifest.xml 和产品能力说明中删除,遵循最小权限原则。
隐私
插件不包含网络请求、广告、统计 SDK 或服务端代码,不会自行存储或上传健康数据。宿主应用对健康数据的展示、持久化、传输、账号关联和删除机制承担最终合规责任。详细说明见工程中的 docs/privacy.md。

收藏人数:
购买源码授权版(
试用
使用 HBuilderX 导入示例项目
赞赏(0)
下载 11
赞赏 0
下载 12467738
赞赏 1936
赞赏
京公网安备:11010802035340号