HarmonyOS应用《民族图鉴》开发第95篇:应用上架——华为应用市场发布全流程 引言经过前面94篇的学习我们从0到1把「民族图鉴」做出来了✅ 项目搭建好了✅ 页面开发完了✅ 服务层抽离了✅ 组件库建好了✅ 模块化拆完了✅ CI/CD搭好了最后一步也是最激动人心的一步把应用上架到华为应用市场让用户能用起来。别小看上架这件事很多人开发做的顺风顺水一到上架就卡壳——账号注册认证搞了一周签名配置错了打包完装不上隐私政策不合规被驳回好几次资质不全审核通不过包体积超限传不上去审核被拒不知道改哪里上架也是一门学问里面有很多坑。踩过的人都知道第一次上架能顺利通过的少之又少。这篇文章我们就来聊聊「民族图鉴」从打包到上架的完整流程。你会学到上架前要做哪些准备工作应用怎么打包签名怎么配应用市场后台怎么配置提审和审核流程是怎样的常见的驳回原因有哪些怎么解决发布之后怎么运营鸿蒙生态有哪些特殊能力读完这篇你就能独立完成一个鸿蒙应用从开发到上架的全流程。 学习目标完成本文后你将能够✅ 掌握鸿蒙应用上架的完整流程✅ 学会开发者账号注册与认证✅ 掌握应用签名证书的配置方法✅ 了解隐私合规审查的要点✅ 学会应用市场后台的配置✅ 掌握提审与审核流程✅ 了解常见驳回原因与解决方案✅ 掌握发布与运营的基本方法✅ 了解鸿蒙生态的特殊能力原子化服务、服务卡片、多端分发✅ 避开上架过程中的常见坑 引言上架不是开发完了才开始想而是从项目立项的时候就要考虑。3.1 开发者账号注册与认证首先你得有个华为开发者账号。账号类型账号类型适用对象费用权限个人开发者个人、独立开发者免费可以发布个人应用企业开发者公司、组织免费认证费可以发布企业应用、游戏政府/事业单位政府机构、事业单位免费发布政务应用「民族图鉴」因为是项目演示用的是个人开发者账号。如果是正式商用建议注册企业账号。注册流程1. 访问华为开发者联盟developer.huawei.com 2. 点击注册用华为账号登录 3. 选择开发者类型个人/企业 4. 填写基本信息 5. 实名认证个人身份证 人脸企业营业执照 6. 等待审核一般1-3个工作日 7. 审核通过开发者账号激活注意事项个人账号只能发个人应用不能发企业/游戏类企业账号需要营业执照法人信息一个身份证只能注册一个个人开发者账号一个营业执照可以注册多个企业开发者账号实名认证是必须的不认证不能发布应用3.2 应用签名证书配置鸿蒙应用必须签名才能安装和发布。就像人的身份证一样签名证明这个应用是你做的。签名相关的概念概念说明证书Certificate证明你是谁由CA颁发密钥Key私钥用来签名一定要保管好签名配置Sign Config打包时用哪个证书、哪个密钥「民族图鉴」的签名配置流程第一步生成密钥和证书请求在 DevEco Studio 里Build → Generate Key and CSR → 选择存储路径 → 设置密钥别名、密码 → 填写证书信息组织、城市、国家... → 生成 .p12 密钥文件和 .csr 证书请求文件第二步申请发布证书去华为开发者联盟管理中心 → 应用服务 → 鸿蒙应用 → 证书管理 → 新增证书 → 上传刚才生成的 .csr 文件 → 选择证书类型发布证书 → 提交申请 → 下载 .cer 证书文件第三步配置签名在 DevEco Studio 里配置build-profile.json5// build-profile.json5{app:{signingConfigs:[{name:release,type:HarmonyOS,material:{certpath:path/to/release.cer,// 证书路径storePassword:your_password,// 密钥库密码keyAlias:your_alias,// 密钥别名keyPassword:your_key_password,// 密钥密码profile:path/to/release.p7b,// Profile文件signAlg:SHA256withECDSA}}],products:[{name:default,signingConfig:release}]}}第四步申请 Profile 文件Profile 文件用来配置应用的权限和设备信息。管理中心 → 应用服务 → 鸿蒙应用 → 管理HAP Provision Profile → 新增 → 选择类型发布/调试 → 选择证书 → 填写包名 → 提交 → 下载 .p7b 文件⚠️重要提醒私钥文件.p12一定要备份好丢了就找不回来了密钥密码要记牢忘了也找不回来证书有有效期到期前要续期不要把签名文件提交到代码仓库加进 .gitignore3.3 隐私合规审查隐私合规是现在的重中之重审核卡得非常严。不合规的应用直接驳回。「民族图鉴」的隐私合规清单1. 隐私政策必须有隐私政策告诉用户你收集了什么信息你用这些信息做什么你怎么保护这些信息用户怎么管理自己的信息怎么联系你「民族图鉴」的隐私政策要点我们不收集用户的个人信息收藏、历史记录存在本地不上传AI对话功能如果用了云端服务要说明互联网权限只用于加载网络资源用户可以随时清除本地数据2. 权限说明用了什么权限都要说明为什么用。「民族图鉴」用到的权限// module.json5 里的权限声明{requestPermissions:[{name:ohos.permission.INTERNET,reason:$string:permission_internet_reason,usedScene:{when:inuse}}]}每个权限都要有name权限名reason为什么用这个权限用户能看到usedScene使用场景前台/后台3. 首次启动弹窗首次启动应用必须弹隐私政策弹窗用户同意了才能继续用。// SplashPage 里的隐私弹窗aboutToAppear():void{constagreedthis.storageService.get(privacy_agreed,false);if(!agreed){this.showPrivacyDialog();// 弹隐私政策弹窗}else{this.goToHome();// 同意过了直接进首页}}弹窗里必须有隐私政策全文或链接「同意」按钮同意才能用「不同意」按钮不同意就退出4. 数据安全不收集不必要的信息敏感数据加密存储不私自上传用户数据第三方SDK也要合规 隐私合规是红线不要心存侥幸。被拒是小事被下架罚款就麻烦了。3.4 内容审核准备除了隐私内容也要合规。资质准备应用类型需要的资质工具类一般不需要特殊资质资讯类ICP备案、新闻资质教育类教育资质医疗类医疗资质金融类金融牌照游戏类版号、ISBN「民族图鉴」是文化百科类属于工具/教育类一般不需要特殊资质但内容要合规。内容合规要点不涉及政治敏感内容不涉及色情低俗内容不涉及暴力恐怖内容不侵犯他人知识产权图片、音乐要有版权民族内容要准确不能有错误或歧视性内容「民族图鉴」的内容来源民族基本信息公开的百科资料图片自己做的或用授权的素材音乐传统民乐注意版权⚠️ 版权问题很重要别随便从网上扒图扒音乐被投诉了要下架的。 需求分析准备工作做完了就可以打包了。4.1 Release 构建打包命令# 打 HAP 包单模块hvigorw assembleHap--moderelease# 打 APP 包多模块上架用hvigorw assembleApp--moderelease打包产物位置entry/build/outputs/default/outputs/default/ ├── entry-default-signed.hap # 签名后的HAP包 └── entry-default-unsigned.hap # 未签名的HAP包APP包在app/build/outputs/default/outputs/default/ ├── app-default-signed.app # 签名后的APP包 └── ...4.2 混淆加固Release 包要开混淆和加固防止被反编译。混淆配置obfuscation-rules.txt# 开启混淆 -ohos-repackage-obfuscation true -ohos-multi-dex-obfuscation true # 保留的类不要混淆 -keep class com.ethnic.encyclopedia.models.** { *; } -keep class com.ethnic.encyclopedia.services.** { *; } # 保留自定义组件 -keep class * extends ohos.ace.** { *; } 混淆的好处代码难被反编译更安全包体积更小类名、方法名变短了增加破解难度4.3 包体积优化华为应用市场对包体积有限制太大了传不上去用户也不愿意下。「民族图鉴」的包体积优化优化项优化前优化后减少图片压缩12MB4MB67%无用资源--2MB混淆压缩--1MB按需加载--5MB总计25MB17MB32%常用优化手段图片压缩用 WebP 格式压缩图片移除无用资源没用到的图片、字符串删掉代码混淆混淆后代码更小按需加载不常用的模块做动态特性资源分包把资源放在云端用的时候再下4.4 多渠道打包有时候需要打不同渠道的包比如应用市场版内测版企业版不同渠道包的区别包名不同或渠道号不同配置不同服务器地址、开关功能不同某些渠道没有某些功能HarmonyOS 可以用 Product Flavor 做多渠道// build-profile.json5{app:{products:[{name:official,signingConfig:release,compatibleSdkVersion:6.1.1(24)},{name:beta,signingConfig:beta,compatibleSdkVersion:6.1.1(24)}]}}️ 核心实现包打好了接下来去应用市场后台配置应用信息。5.1 创建应用登录华为开发者联盟管理中心 → 应用服务 → 鸿蒙应用 → 我的应用 → 新建应用 → 选择设备类型手机、平板、车机... → 填写包名必须和代码里的一致 → 选择分类 → 创建包名注意事项必须是唯一的不能和已有应用重复格式一般是倒序域名com.ethnic.encyclopedia创建之后就不能改了想改只能重新建代码里的 bundleName 必须和这里一致「民族图鉴」的包名com.ethnic.encyclopedia5.2 应用信息配置创建完应用开始填信息。这些信息用户在应用市场能看到很重要。基本信息字段说明「民族图鉴」示例应用名称用户看到的名字民族图鉴应用简介一句话介绍56个民族文化百科全书应用介绍详细介绍最多8000字民族图鉴是一款介绍中国56个民族的百科应用…图标512x512pxPNG格式民族图鉴Logo截图3-8张JPG/PNG首页、列表、详情、音乐…视频可选介绍视频-分类选一个主分类 子分类教育 → 百科标签最多5个标签民族、文化、百科、知识、56民族截图要求至少3张最多8张尺寸根据设备类型而定手机1080x1920 或 720x1280JPG 或 PNG 格式不能带其他手机品牌的元素要真实反映应用内容不能误导用户应用介绍怎么写结构建议一句话说清楚这是啥核心功能亮点3-5条详细介绍联系方式 / 关注我们「民族图鉴」的应用介绍结构【产品介绍】 民族图鉴是一款介绍中国56个民族的文化百科应用... 【核心功能】 ️ 民族百科56个民族详细介绍... 民族音乐各民族传统音乐欣赏... ️ 分布地图民族地理分布一目了然... 知识测验趣味答题学知识... AI助手AI解答民族文化问题... 【联系我们】 邮箱feedbackethnic-example.com5.3 定价与分发定价免费大部分应用选这个付费下载就要给钱「民族图鉴」选的是免费。分发范围全球发布仅在某些国家/地区发布「民族图鉴」主要面向国内用户选中国大陆。5.4 隐私与安全隐私相关的配置配置项说明隐私政策上传隐私政策文档或链接权限说明每个用到的权限都要说明用途数据安全说明数据怎么收集、怎么用、怎么保护儿童隐私是否面向儿童是的话要符合儿童隐私保护第三方SDK列出所有用到的第三方SDK这些一定要填仔细是审核重点。5.5 内容分级根据应用内容做年龄分级全年龄段69121618「民族图鉴」是文化百科全年龄段。️ 核心实现正式发布之前建议先发测试版让内部或种子用户测一测。6.1 测试类型华为应用市场支持几种测试方式测试类型说明适用场景Alpha测试开发团队内部测试开发阶段自测Beta测试邀请外部用户测试公测阶段众测大量用户参与测试大规模验证6.2 「民族图鉴」的测试流程阶段1Alpha测试1周 参与人员开发团队内部 范围全功能测试 方式直接装HAP包 阶段2封闭测试1周 参与人员邀请的种子用户50人 范围核心流程测试 方式应用市场测试版下载 阶段3公测2周 参与人员所有感兴趣的用户 范围全量功能验证 方式应用市场公测版下载6.3 测试版发布流程1. 上传测试包 2. 填写测试说明 3. 添加测试人员邮箱/华为账号 4. 提交审核 5. 审核通过测试人员可以下载 6. 收集反馈修复问题 7. 没问题了提交正式版 不要省测试这一步。很多问题你自己测不出来用户一用就发现了。早发现早修复总比上线了被用户骂好。️ 核心实现测试没问题了就可以提交正式审核了。7.1 提交审核流程1. 上传Release包.app 或 .hap 2. 填写版本信息版本号、更新说明 3. 确认所有配置都填好了 4. 点击提交审核 5. 等待审核...版本号规则「民族图鉴」用的是语义化版本versionCode整数每次加11000000 → 1000001versionName给人看的1.0.0 → 1.1.0// app.json5{app:{versionCode:1000000,versionName:1.0.0}}7.2 审核时间一般审核1-3个工作日加急审核可以申请但要有充分理由更新版本一般比新应用快一点「民族图鉴」第一次审核花了2天驳回一次修改后第二天就过了。7.3 审核状态状态说明待审核提交了还没开始审审核中正在审核审核通过过了可以发布了审核驳回没过要修改已下架应用被下架了7.4 常见驳回原因与解决方案这是重点很多人被驳回好几次就是因为踩了这些坑。「民族图鉴」第一次提交也被驳回了我们整理了常见的驳回原因 高频驳回原因1. 隐私政策不合规没有隐私政策 → 加上隐私政策不完整 → 补全收集、使用、存储、删除等内容首次启动没有隐私弹窗 → 加上弹窗用户同意才能进权限没有说明用途 → 每个权限都要说明为什么用2. 内容违规涉及敏感内容 → 删掉或修改侵权图片、音乐→ 换成有版权的内容不准确 → 修改正确3. 功能异常闪退、崩溃 → 修复bug功能不可用 → 确保所有功能都能正常用兼容性问题 → 适配更多设备4. 信息不符截图和实际应用不一样 → 换成真实截图描述夸大宣传 → 改描述实事求是分类选错了 → 重新选分类5. 资质不全需要资质但没提供 → 补充资质资质过期了 → 更新资质 「民族图鉴」被驳回的经历第一次提交被驳回原因是“应用首次启动未展示隐私政策弹窗不符合隐私合规要求。”我们赶紧在启动页加了隐私弹窗第二次提交就过了。 审核小技巧提交前自己先对照检查清单过一遍隐私政策找律师或专业人士看看功能多测几遍别带着明显的bug就提交描述实事求是别夸大被驳回了不要慌按要求改一般都能过7.5 审核加速与申诉加急审核紧急情况可以申请加急比如严重bug修复、紧急安全更新不是所有申请都能通过申诉对审核结果有异议可以申诉准备好申诉理由和证据按要求提交材料️ 核心实现审核通过了终于可以发布了。8.1 发布方式发布方式说明立即发布审核通过立刻上线定时发布指定时间上线比如周五上午10点分阶段发布逐步放量灰度「民族图鉴」选的是分阶段发布第1天10%用户 第2天30%用户 第3天50%用户 第4天100%用户每天看数据没问题就加量有问题就暂停。8.2 版本管理版本更新每次更新都要改版本号versionCode 1versionName 对应升写更新日志上传新包提交审核更新日志怎么写别只写修复了一些bug用户想知道具体改了啥。好的更新日志v1.1.0 更新日志 【新增功能】 - 新增民族音乐馆可欣赏各民族传统音乐 - 新增知识测验功能趣味答题学知识 - 新增AI助手有问题随时问 【优化体验】 - 列表加载速度提升50% - 优化搜索体验支持拼音搜索 - 深色模式适配更完善 【修复问题】 - 修复部分机型收藏不同步的问题 - 修复音乐播放偶尔卡顿的问题 - 修复若干已知bug8.3 评论管理用户评论很重要一定要重视。为什么要管理评论好的评论能提高转化率负面评论会影响下载评论里有很多有用的反馈怎么管理评论及时回复用户反馈好建议记下来后续版本做恶意举报投诉定期整理评论做版本规划回复的原则态度友好不管用户说什么都别怼问题认账说清楚什么时候改好的建议感谢用户不要用模板显得有诚意8.4 数据统计发布之后要盯着数据看。核心指标指标说明怎么看下载量多少人下载了看增长趋势活跃用户多少人在用DAU/MAU留存率用户用了之后还来不来次日/7日/30日留存崩溃率应用崩不崩越低越好1%合格ANR率卡不卡越低越好评分用户打几颗星越高越好评论数用户参与度越多越好数据工具华为应用市场自带统计华为分析HUAWEI Analytics自己埋点统计8.5 ASO 应用商店优化应用商店优化App Store Optimization简称ASO就是通过优化应用在商店里的各种信息让更多用户能搜到你、看到你、下载你。为什么ASO很重要应用商店里几百万个应用用户怎么找到你搜索是最大的流量来源搜索排名靠前下载量就高好的ASO能带来大量免费的自然流量ASO的核心优化点1. 应用名称标题标题是最重要的要包含核心关键词。不好的名字民族图鉴 好的名字民族图鉴-56个民族文化百科全书注意标题长度有限制不要太长要包含用户会搜的关键词不要堆砌关键词要通顺品牌词放前面功能词放后面2. 关键词华为应用市场有关键词设置选对关键词很重要。「民族图鉴」的关键词选择核心词民族、56个民族、民族文化功能词百科、知识、传统文化人群词学生、儿童、教育长尾词民族服饰、民族音乐、民族节日选词方法看同行用了什么词用搜索下拉框联想看相关搜索推荐用第三方ASO工具查3. 应用描述描述里也要自然地融入关键词同时要说服用户下载。描述的结构【第一句话】一句话说清楚你是谁有什么好用户只看前几行 【核心功能】3-5个亮点用emoji点缀 【详细介绍】详细说说你的特色 【联系方式】邮箱、社交媒体4. 图标设计图标是用户的第一印象很重要。好图标特点辨识度高一眼就能记住风格统一和应用内设计一致颜色鲜明在一堆图标里能跳出来简洁明了不要太复杂「民族图鉴」的图标设计思路用中国风的元素56个民族的概念可视化色彩丰富但不杂乱文化感、知识感5. 截图 视频截图是转化率的关键——用户点进来先看截图好看才会下载。截图设计要点第1张最重要放最吸引人的画面每张图突出一个核心功能加简短的文字说明风格统一配色协调用真实的应用截图不要P得太假6. 评分 评论评分高的应用排名靠前用户也更愿意下载。怎么提高评分产品做好这是根本适时引导用户评分用得开心的时候弹及时回复负面评论解决问题不要刷好评被发现了会下架7. 下载量 活跃度应用商店的算法会看下载量、活跃度、留存率这些数据数据好排名就靠前。所以ASO不只是改改文字根本还是产品要好——用户愿意下、愿意用、愿意留排名自然就上去了。「民族图鉴」的ASO策略第一阶段上线初期 - 选对核心关键词覆盖主要搜索词 - 优化标题、描述、截图 - 邀请种子用户下载、好评 第二阶段增长期 - 拓展长尾关键词 - A/B测试不同的图标、截图 - 做一些活动推广带起下载量 第三阶段成熟期 - 维护评分和评论 - 定期更新版本保持活跃度 - 分析数据持续优化 ASO是个长期的事不是一劳永逸的。要持续看数据、持续优化。8.6 用户反馈用户反馈是产品改进的金矿。反馈渠道应用内反馈入口应用市场评论邮箱社交媒体用户群怎么处理反馈收集所有渠道的反馈都收集起来分类按类型分bug、建议、吐槽…优先级重要紧急的先做响应给用户回复让他知道你看到了落地做到版本里更新了告诉用户 重视用户反馈的产品用户会越来越喜欢。不重视的用户用脚投票。️ 核心实现鸿蒙跟其他系统不一样有一些独特的生态能力一定要用好。9.1 原子化服务Atomic Service原子化服务是鸿蒙的特色能力用户不用下载安装即点即用。特点免安装不用下载点一下就能用轻量化体积小加载快可分享可以通过二维码、分享等方式传播多设备手机、平板、车机、智慧屏都能用「民族图鉴」的原子化服务规划民族详情原子化服务扫一下就能看某个民族的介绍每日一签原子化服务每天给你推一个民族小知识知识测验原子化服务分享给朋友点开就能答题9.2 服务卡片Form服务卡片Widget是显示在桌面上的小部件不用打开应用就能看到信息。「民族图鉴」可以做的卡片卡片类型尺寸内容每日一签2x2 / 2x4每天一个民族小知识民族日历2x4 / 4x4今天是什么民族的传统节日收藏快进2x2快速打开收藏的民族服务卡片是提升用户活跃度的神器——用户不用打开App在桌面上就能看到内容增加了使用频次。9.3 多端分发鸿蒙是分布式系统一个应用可以跑在多种设备上。支持的设备手机 / 平板车机智慧屏 / TV智能穿戴手表、手环智能家居…「民族图鉴」的多端规划手机/平板完整功能车机语音交互、音乐播放智慧屏大屏浏览、家庭分享手表简单的每日一签、收藏查看一次开发多端部署这是鸿蒙的大优势。9.4 分布式能力鸿蒙的分布式能力可以让应用在多设备之间无缝流转。比如手机上看民族详情碰一下平板就流转到平板上继续看手机上播放民族音乐流转到音箱上播放智慧屏上看地图手机当控制器这些都是鸿蒙特有的能力用好了能做出很惊艳的体验。⚠️ 常见问题与解决方案Q1审核被拒了心情很糟糕怎么办A正常第一次就过的才是少数。别慌仔细看驳回原因按要求改改完再提交实在搞不懂打客服电话问一般改个1-2次就能过了Q2包体积太大传不上去怎么办A优化从这几个方面入手图片压缩换成 WebP压缩质量移除没用的资源没用到的图片、字符串全删掉混淆压缩开混淆代码更小按需加载不常用模块做动态特性资源在线把大图、音视频放云端用的时候再下分渠道不同渠道不同包Q3兼容性问题某些机型用不了怎么办A尽量适配实在不行就限制设备。主流机型一定要适配华为旗舰、中端机型小众机型如果问题大可以在后台设置支持的设备在应用介绍里说明支持的设备持续更新逐步增加适配Q4评分太低了怎么办A评分低说明产品有问题别想着刷分。认真看评论找出主要问题优先修复大家吐槽最多的问题新版本出来评分一般会回升引导用户好评但别强制别刷产品做好了评分自然上去Q5被投诉侵权了怎么办A先下架再处理。如果确实侵权了赶紧换掉侵权内容如果是误伤准备证据申诉版权问题一定要重视别心存侥幸素材尽量自己做或者买正规授权 本章小结这是系列的最后一篇我们讲了「民族图鉴」从打包到上架的完整流程核心要点上架前准备开发者账号注册与认证签名证书配置隐私合规审查内容审核准备应用打包Release构建混淆加固包体积优化多渠道打包应用市场配置应用信息名称、图标、截图、介绍定价与分发隐私与安全内容分级测试版本Alpha → Beta → 众测层层验证审核流程提交审核 → 审核中 → 通过/驳回常见驳回原因隐私不合规、内容违规、功能异常、信息不符、资质不全发布运营分阶段发布、灰度发布版本管理、更新日志评论管理、用户反馈数据统计、持续迭代鸿蒙特色能力原子化服务免安装、即点即用服务卡片桌面小组件多端分发手机、平板、车机、智慧屏…分布式能力跨设备流转 相关链接从第1篇到第95篇我们从0到1完整走过了「民族图鉴」HarmonyOS应用的开发之路。我们一起学了️ 基础篇环境搭建、项目结构、ArkTS、声明式UI、组件、状态管理、路由、资源管理… 页面篇启动页、首页、列表页、详情页、地图页、音乐页、测验页、个人中心… 服务篇数据模型、Mock数据、存储服务、TTS服务、音乐服务、主题服务、AI服务…️ 架构篇架构设计、组件设计、性能优化、工程化、调试方法…✨ 进阶篇动画、手势、对话框、下拉刷新、图片加载、表单验证、网络进阶…⚡ 性能篇启动优化、布局渲染、列表性能、内存优化、包体积优化、功耗优化… HarmonyOS 7篇技能开发、Agent AI、视觉AI、沉浸式灯光、3DGS、空间音频、悬浮窗… 架构进阶篇项目重构、模块化架构、组件库建设、CI/CD、应用上架…95篇文章几十万字从入门到上架完整覆盖了鸿蒙应用开发的方方面面。但这不是结束而是开始。技术在不断进步HarmonyOS还在快速发展新的能力、新的特性会不断涌现。我们要保持学习的热情跟上技术的步伐。最后送给大家几句话纸上得来终觉浅绝知此事要躬行。看一百篇文章不如动手写一个项目。遇到问题不可怕解决问题的过程就是成长的过程。保持好奇心保持学习的习惯你会越来越强。祝你在鸿蒙开发的道路上越走越远越走越好《民族图鉴HarmonyOS应用开发95篇》—— 全文完感谢你的阅读