🧾 一、开发前准备:账号资质与权限申请
-
开发者账号类型
- 企业开发者资质:运动健康类应用必须使用企业开发者账号(个人开发者仅支持测试权限,且无法解除100用户限制)。
- 实名认证:在华为开发者联盟完成企业实名认证,需提供营业执照、对公账户验证等材料。
-
加入受邀名单
- 登录AppGallery Connect(AGC),若未在运动健康服务受邀名单中,需发送邮件至
hihealth@huawei.com申请加入(上架必备条件)。
- 登录AppGallery Connect(AGC),若未在运动健康服务受邀名单中,需发送邮件至
-
申请Health Service Kit权限
- 数据权限申请:在开发者联盟“管理中心”申请Health Service Kit服务,提交步数、心率等数据权限申请,需同步提供隐私政策及业务合理性说明,审核周期约15个工作日。
import abilityAccessCtrl from '@ohos.abilityAccessCtrl'; import hiHealth from '@ohos.hiHealth'; // 检查并申请健康数据权限 async function requestHealthPermissions() { const atManager = abilityAccessCtrl.createAtManager(); const permissions = [ 'ohos.permission.READ_HEALTH_DATA', // 基础步数 'ohos.permission.WRITE_HEALTH_DATA', // 写入权限 'ohos.permission.HEART_RATE' // 心率等高危权限 ]; // 先检查未授权权限 const ungranted = await atManager.checkPermissions(permissions) .filter(perm => perm.grantStatus !== abilityAccessCtrl.GrantStatus.PERMISSION_GRANTED); if (ungranted.length > 0) { // 弹窗说明数据用途(合规要求) AlertDialog.show({ title: '健康数据使用说明', message: '步数和心率数据将用于生成运动报告,我们承诺加密存储', confirm: { action: () => atManager.requestPermissionsFromUser( getContext(this), ungranted, { reason: '生成个性化运动方案需要您的健康数据' } // 必须明确用途 ) } }); } else { startHealthDataCollection(); } } - 资质要求:
- 企业实缴注册资本要求:基础数据权限(如步数)需≥50万元,高阶健康数据(如心率、血糖)需≥500万元,且企业成立时间≥1年。
- 个人开发者仅能申请基础数据权限,且需上架华为应用市场后方可申请。
- 数据权限申请:在开发者联盟“管理中心”申请Health Service Kit服务,提交步数、心率等数据权限申请,需同步提供隐私政策及业务合理性说明,审核周期约15个工作日。
🔒 二、开发阶段:合规与功能实现
-
隐私合规核心要求
- 权限最小化:禁止在用户未授权前读取健康数据;授权弹窗需明确说明数据用途(如“心率数据用于运动强度分析”)。
- 隐私政策一致性:
- 隐私政策中公司名称、应用名称需与开发者账号实名信息完全一致;
- 需独立说明数据收集类型(如睡眠数据、运动轨迹)及存储方式,并提供取消授权功能。
import webview from '@ohos.web.webview'; import router from '@ohos.router'; // 应用启动时检查隐私政策确认状态 export default class EntryAbility { onWindowStageCreate(windowStage) { if (!LocalStorage.get('privacyAccepted')) { router.pushUrl({ url: 'pages/PrivacyPage', // 独立隐私政策页 params: { companyName: 'XX科技有限公司', // 必须与开发者账号一致 dataTypes: '步数、心率、睡眠' // 明确收集类型 } }); } } } // PrivacyPage.ets中嵌入WebView展示隐私政策 @Entry @Component struct PrivacyPage { build() { Column() { Web({ src: 'https://www.yourdomain.com/privacy.html' }) Button('同意并继续') .onClick(() => { LocalStorage.set('privacyAccepted', true); router.back(); }) } } }
- 举证视频:录制从应用启动到打开隐私政策的完整流程,展示公司名称与应用名称的统一性。
-
多设备兼容性开发
- 穿戴设备适配:通过DistributedDeviceManager实现手表与手机的数据同步(如心率实时显示),需在真机(如华为手表GT系列)验证同步逻辑。
- 性能优化:
- 手表端HAP包≤20MB,手机端≤2GB;
- 采用响应式布局(ArkUI栅格系统),适配折叠屏、智慧屏等设备。
import distributedDeviceManager from '@ohos.distributedDeviceManager'; import hiHealth from '@ohos.hiHealth'; // 监听手表数据变化 const watchDeviceSync = () => { const deviceManager = distributedDeviceManager.createDeviceManager(); deviceManager.on('deviceOnline', (device) => { if (device.deviceType === 'watch') { hiHealth.createHealthManager(device.deviceId).then(manager => { manager.on('stepChange', (steps) => { console.info(`实时步数: ${steps}`); // 对比华为健康数据(审核要求偏差≤1%) compareWithHuaweiHealth(steps); }); }); } }); }; // 数据一致性验证(必须实现) async function compareWithHuaweiHealth(localSteps: number) { const huaweiSteps = await hiHealth.queryStepsFromHuawei(); const deviation = Math.abs(localSteps - huaweiSteps) / huaweiSteps; if (deviation > 0.01) { console.error(`步数偏差超标: ${deviation*100}%`); // 触发校准逻辑 } }
-
健康数据使用规范
- 数据对比一致性:若应用读取华为运动健康App数据,需提供数据对比截图证明一致性(如步数统计偏差≤1%)。
- 实时同步能力:涉及云侧API时,需提供手动同步入口及数据实时性举证视频。
📦 三、应用打包与签名
-
签名证书生成
- 在DevEco Studio选择
Build > Generate Key and CSR生成.p12文件,密码需含大写字母+小写字母+数字/符号组合。 - 在AGC申请发布证书(
.cer)和发布Profile(.p7b),包名需与app.json5中的bundleName完全一致。
- 在DevEco Studio选择
-
编译与包体控制
- 编译命令:
ohpm build --profile release --target-device phone,wearable# build.gn 配置示例 ohos_app { module_switch = [ "phone", # 手机端 "wearable" # 手表端(需单独配置) ] wearable { hap_name = "watch.hap" js_bundle = "./src/main/watch" # 独立代码目录 resources = "./resources/watch" # 独立资源 compress_level = "high" # 启用高级压缩 dex_options { enable_multidex = false # 禁用多dex } } } - 包体限制:
设备类型 最大HAP包大小 手机/平板 2GB 运动手表 20MB 元服务(免安装) 10MB
- 编译命令:
📋 四、AGC配置与审核材料
-
基础信息配置
- 分类选择:创建应用时勾选“运动健康”类别,指定支持设备(如穿戴设备)。
- 关联Android应用:若需替换用户设备的Android版本,需绑定已上架的Android应用(一对一关联)。
-
必审材料清单
- 应用上线CheckList:逐项填写功能自检结果,并附对应场景的举证视频(如授权失败处理流程)。
- 隐私政策视频:展示隐私政策中公司名称、应用名称与申请信息的一致性。
- ICP备案/许可证:中国大陆地区需提供工信部ICP备案号或《增值电信业务经营许可证》。
⚠️ 五、运动健康服务验证申请
-
解除100用户限制
- 企业开发者在AGC提交“申请验证”,上传完整审核材料,审批周期约15个工作日;
- 个人开发者需邮件发送材料至
hihealth@huawei.com,且仅支持基础数据权限。
-
常见驳回问题与解决
问题类型 解决建议 权限列表不一致 检查授权页面展示权限是否与申请验证勾选权限完全匹配 华为图标使用错误 文字描述统一用“华为运动健康”,图标遵循《视觉识别规范手册》 数据对比材料缺失 每个数据类型需提供与华为运动健康App的一致性截图 强制全部授权 允许用户部分授权,仅核心功能(如健康模型计算)可要求全部授权
🚀 六、上架与发布策略
-
审核加速技巧
- 加急通道:邮件至
agconnect@huawei.com,标题注明[运动健康应用加急]-[应用名称],符合条件可缩短至24小时过审。 - 真机云测试:通过AGC真机云测覆盖50+设备,确保崩溃率<0.1%。
- 加急通道:邮件至
-
上架后维护
- 数据分析:集成华为分析SDK,监控用户健康行为(如日均步数、睡眠时长)。
- 权限更新:业务变动需在开发者联盟“管理”页面重新提交权限申请。
💎 总结:运动健康类应用上架核心差异点
- 权限差异化:必须额外申请Health Service Kit权限及商用验证,否则限制100用户。
- 隐私敏感性:举证材料中公司/应用名称一致性、数据授权流程完整性是审核重点。
- 真机测试必要性:穿戴设备数据同步功能需在真机(如华为手表)验证,模拟器无法覆盖传感器交互。
1757

被折叠的 条评论
为什么被折叠?



