首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >鸿蒙开发:应用上架第三篇,配置签名信息打出上架包

鸿蒙开发:应用上架第三篇,配置签名信息打出上架包

原创
作者头像
程序员一鸣
发布于 2025-05-24 09:45:36
发布于 2025-05-24 09:45:36
2160
举报

前言

本文基于Api13

经过前面两篇文章,我们获取到了密钥和证书请求文件以及最终的发布证书和发布证书Profile文件,可以说,所有的签名信息文件,我们都已经完成了,正所谓,万事俱备只欠东风,这篇文章,我们着重概述一下,如何配置签名信息以及如何打出签名包。

前面两篇文章,我们生成的文件,一定要保存好,最重要的是三个文件,分别是cer证书文件,.p12密钥文件和.p7b发布证书Profile文件:

配置签名信息

配置签名信息,有两种配置方式,一种是直接按照测试的信息复制修改即可,另一种是通过DevEco Studio IDE进行手动配置。

复制修改

在项目build-profile.json5文件中,我们把原来测试自动生成的签名信息手动复制一份,name修改为自己定义的名字,比如release,还有一点需要知道,signingConfigs之前说过,可以支持多份签名。

配置信息按照如下介绍设置即可:

配置代码如下:

代码语言:json
AI代码解释
复制
"signingConfigs": [
      {
        "name": "default",
        "type": "HarmonyOS",
        "material": {
          "certpath": "/Users/abnerming/.ohos/config/default_Demo_Pnrx-7lyKAHsQo3AwkM12-Ly-9b8r6LaO9FjyL_MswI=.cer",
          "storePassword": "0000001BC250F17B8DE65303700FBC807E84FB5489DA865BE094F95F1E7EADFE376F3586EB3AC142AB5E16",
          "keyAlias": "debugKey",
          "keyPassword": "0000001B5FEB0A1139B5C3D5CE59B37B9EB9100D28643C42ED6898619BCD4BEA36A821A666FC9AB0966217",
          "profile": "/Users/abnerming/.ohos/config/default_Demo_Pnrx-7lyKAHsQo3AwkM12-Ly-9b8r6LaO9FjyL_MswI=.p7b",
          "signAlg": "SHA256withECDSA",
          "storeFile": "/Users/abnerming/.ohos/config/default_Demo_Pnrx-7lyKAHsQo3AwkM12-Ly-9b8r6LaO9FjyL_MswI=.p12"
        }
      },
      {
        "name": "release",
        "type": "HarmonyOS",
        "material": {
          "storePassword": "00000018809D89A280116CD33A65E5D4F36AE7AFF512EFFB8AC497C2B63719E06B67A80A746C9F26",
          "certpath": "/Users/abnerming/harmony/test/abner.cer",
          "keyAlias": "abner",
          "keyPassword": "00000018AB533C6359E2D430AF157ECCF736C800A54A66C82DDEA4357942EBAAB66A84CC4D72A952",
          "profile": "/Users/abnerming/harmony/test/abner.p7b",
          "signAlg": "SHA256withECDSA",
          "storeFile": "/Users/abnerming/harmony/test/abner.p12"
        }
      }
    ]

具体的相关字段,大家可以按照表中介绍一一对应填写。

项目配置手动选择

以上手动复制代码修改,大家可以看到,有两项storePassword和keyPassword都是以密文的形式配置的,还得需要自己手动进行把明文密码更改为密文,加密方式也需要自行摸索,十分的不便,莫慌,项目配置手动选择一项,可以解决我们的痛点,点击项目配置,选择Signing Configs选项,点击“+”选项。

输入您的签名方案名字:

点击ok之后,把Automatically generate signature选项取消掉,就可以手动进行填写了,所有的信息,都是前边两篇文章中生成的,这些信息很重要,请一定要保管好。

配置好之后,我们可以发现,会自动在项目build-profile.json5文件中生成一份配置好的签名信息,当然了也包含了已经转换后的密文信息。

配置产品品类信息

以上的签名信息配置好之后,我们怎么进行打包呢,毕竟我们现在有两套签名信息,一套是默认的default,一套是正式的release,如何选择,这就需要配置产品品类信息了,也就是build-profile.json5中的products字段。

如果没有别的信息配置,我们直接把default复制一份即可,name和signingConfig修改为我们签名信息对应的即可。

代码语言:json
AI代码解释
复制
"products": [
      {
        "name": "default",
        "signingConfig": "default",
        "compatibleSdkVersion": "5.0.0(12)",
        "runtimeOS": "HarmonyOS",
        "buildOption": {
          "strictMode": {
            "caseSensitiveCheck": true,
            "useNormalizedOHMUrl": true
          }
        }
      },
      {
        "name": "release",
        "signingConfig": "release",
        "compatibleSdkVersion": "5.0.0(12)",
        "runtimeOS": "HarmonyOS",
        "buildOption": {
          "strictMode": {
            "caseSensitiveCheck": true,
            "useNormalizedOHMUrl": true
          }
        }
      }
    ]

由于出包,需要针对每个模块进行签名打包,所以,在配置好了产品品类信息之后,我们就需要给各个模块加上我们的品类,一定要记住,每个都需要加,当然了,HAR模块无需配置。

如entry模块中的applyToProducts,我这里把新的产品加上了。

代码语言:json
AI代码解释
复制
{
      "name": "entry",
      "srcPath": "./entry",
      "targets": [
        {
          "name": "default",
          "applyToProducts": [
            "default",
            "release"
          ]
        }
      ]
    }

以上的信息配置好之后,我们点击模块左侧的图标,就可以切换产品品类了。

想打正式包,直接选择配置好的正式签名即可。

出包

所有的信息配置好之后,那么打包就是最简单的,直接点击顶部的导航栏中Build->Build Hap(s)/APP(s)->Build App(s)。

点击之后,经过一段时间的编译,就会在项目中生成一个build文件夹,找到对应的签名信息文件,里面的带有signed字段的就是打出的签名包。

后续,往应用商店上架,传的就是这个签名包。

本文标签:HarmonyOS应用上架。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
1.在 AppGalleryConnect,证书、APP ID 和 Profile 中。
少湖说
2024/11/10
5070
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
鸿蒙多环境配置二
你是否每次手动更改发布证书打app包上加应用市场呢?你是否每次打完包都手动在名称后添加版本号和时间呢?不同环境的依赖包经常打包时忘记改呢?其实这些鸿蒙都支持动态配置。
龙儿筝
2024/11/19
1720
鸿蒙多环境配置二
Harmonyos next 鸿蒙原生 证书 & 打包到真机
harmonyos next 鸿蒙打包到真机还比较麻烦,如果是个人开发者,只有一台设备,那直接选择自动签名Automatically generate signature就可以。但是如果是多人开发多台设备就需要配置了,这样切换分支的时候用同一配置也能打包。
Jingbin
2025/03/05
5291
鸿蒙开发:一键更新,让应用无需提交应用市场即可下载安装
HarmonyOSNEXT以后,一直想做一件事情,那就是如何让鸿蒙打出的包,可以像Android安装apk那样简单便捷!如今,经过多天的开发,测试,验证,一个便捷的插件终于开发完毕,它只有一个特点,那就是一键打包上传,并最终生成下载地址和二维码,可以让您更灵活的发布版本和限定测试范围,助您提前发现问题,及时修复问题和优化版本体验。
程序员一鸣
2025/07/22
1350
鸿蒙开发:一键更新,让应用无需提交应用市场即可下载安装
55.HarmonyOS NEXT 登录模块开发教程(九):部署与发布
在前八篇教程中,我们介绍了HarmonyOS NEXT登录模块的整体架构、模态窗口的实现原理、一键登录页面的实现、短信验证码登录的实现、状态管理和数据绑定机制、安全性考虑、UI设计和用户体验优化、性能优化和最佳实践以及测试与调试技巧。本篇教程将深入讲解登录模块的部署和发布流程,帮助开发者将登录功能顺利部署到实际环境中。
全栈若城
2025/03/13
1670
【鸿蒙】6岁小外甥做了一个鸿蒙App,结果竟然无法在手机上运行,小子,你忘签名了!
在真机上运行App与在模拟器上运行App不同。在真机上不管是调试(debug)还是发布(release),都需要对hap文件进行签名。签名一个hap文件需要4类文件:p12、csr、cer和p7b文件。其中p12和csr文件可以自助生成,cer和p7b文件需要到华为开发者网站后台去申请,然后下载。
蒙娜丽宁
2021/07/05
1.1K1
鸿蒙开发:应用上架第二篇,申请发布证书
通过第一篇文章,我们拿到了密钥库.p12文件和证书请求csr文件,这两个文件都是非常重要的,一定要保存好,我们也基本知道了应用的打包,签名信息文件是必须的,而对于签名信息,也有一项非常重要的属性,那就是profile文件,主要用于设置发布或调试证书,那么这个证书如何获取呢,本文就着重概述一下。
程序员一鸣
2025/05/24
2210
鸿蒙开发:应用上架第二篇,申请发布证书
记录一下 Unity团结引擎开发OpenHarmony Next 应用 环境搭建流程
根据各自的开发环境下载对应的软件版本,我是 windwos 环境,我就下载 windows 环境
Gorit
2024/03/19
1.3K0
记录一下 Unity团结引擎开发OpenHarmony Next 应用 环境搭建流程
鸿蒙 API 9工程转换为API 10工程
目前我们能够看到的是鸿蒙已经到API10,甚至今天在看OpenHarmony官网的时候,4.1beta的分支都已经有了,也就是API11马上就出来了。
徐建国
2023/12/21
3.3K1
鸿蒙 API 9工程转换为API 10工程
【HarmonyOS Next之旅】DevEco Studio使用指南(三)
DevEco Studio从 NEXT Developer Beta1版本开始,提供开箱即用的开发体验,将SDK、Node.js、Hvigor、OHPM等工具链进行合一打包,简化DevEco Studio安装配置流程;并提供一体化的历史工程迁移能力,帮助开发者快速完成工程转换。
枫叶丹
2025/03/14
2110
【HarmonyOS Next之旅】DevEco Studio使用指南(三)
鸿蒙开发实战:灵活定制编译选项,打造高效应用
在鸿蒙开发的广阔领域中,灵活定制编译选项是每位开发者不可或缺的一项技能。这项技能不仅影响着应用的性能表现,更直接关联到应用在不同场景下的稳定性和用户体验。在本篇文章中,我们将深入探讨鸿蒙开发中如何巧妙地定制编译选项,并分享一些实用的实战经验和专业技巧。
用户2475552
2025/06/29
1200
使用鸿蒙版 Flutter3.27.4 构建鸿蒙应用
随着鸿蒙系统的不断发展,越来越多的开发者开始关注如何使用 Flutter 来构建鸿蒙应用。本文将详细介绍如何使用鸿蒙版 Flutter 3.27.4 来构建鸿蒙应用,帮助大家快速上手。
徐建国
2025/06/08
8640
使用鸿蒙版 Flutter3.27.4 构建鸿蒙应用
OpenHarmony—Hap包签名工具
为了保证OpenHarmony应用的完整性和来源可靠,在应用构建时需要对应用进行签名。经过签名的应用才能在真机设备上安装、运行、和调试。developtools_hapsigner仓 提供了签名工具的源码,包含密钥对生成、CSR文件生成、证书生成、Profile文件签名、Hap包签名等功能。
小帅聊鸿蒙
2024/07/18
3610
OpenHarmony—Hap包签名工具
鸿蒙开发:应用上架第一篇,生成密钥和证书请求文件
打包是上架到应用市场的前提,鸿蒙应用的打包和Android有着很大的区别,Android中所有的签名配置,在IDE中就可以搞定,而鸿蒙中则无法实现,必须遵守应用商店的签名规则,本系列文章,我们就着重概述一下,在鸿蒙当中,如何打出一个上架包,一个上架包的产出,需要多个步骤,本篇文章,我们先从第一步骤进行讲解,也就是如何生成秘钥和证书请求文件。
程序员一鸣
2025/05/22
2730
鸿蒙开发:应用上架第一篇,生成密钥和证书请求文件
【错误记录】HarmonyOS 运行报错 ( Failure INSTALL_PARSE_FAILED_USESDK_ERROR )
Failure[INSTALL_PARSE_FAILED_USESDK_ERROR] compileSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device.
韩曙亮
2024/06/02
1.4K0
【错误记录】HarmonyOS 运行报错 ( Failure INSTALL_PARSE_FAILED_USESDK_ERROR )
uni-app x 支持鸿蒙
国产替代浪潮奔涌,鸿蒙适配已成为一个必答题,这里面跨端框架是破局多 OS 割裂的最优解。比如 uniapp x,之前有很多 app 可能是用 uniappx 做的,那么如何支持鸿蒙呢?
徐建国
2025/04/15
4390
uni-app x 支持鸿蒙
uniapp 极速上手鸿蒙开发
uniapp 团队 与版本 4.28.2024092502 起,支持鸿蒙应用开发,现在是 4.36.2024112817,同时支持鸿蒙应用和元服务开发了。
万少
2025/02/08
2160
uniapp 极速上手鸿蒙开发
【HarmonyOS Next之旅】DevEco Studio使用指南(二)
DevEco Studio支持多种品类的应用/元服务开发,预置丰富的工程模板,可以根据工程向导轻松创建适应于各类设备的工程,并自动生成对应的代码和资源模板。同时,DevEco Studio还提供了多种编程语言供开发者进行应用/元服务开发,包括ArkTS、JS和C/C++。
枫叶丹
2025/03/11
2140
【HarmonyOS Next之旅】DevEco Studio使用指南(二)
鸿蒙应用开发之打包与上架
当您开发、调试完HarmonyOS应用/元服务,就可以前往AppGallery Connect申请上架,华为审核通过后,用户即可在华为应用市场获取您的HarmonyOS应用/元服务。
小帅聊鸿蒙
2024/06/19
8530
鸿蒙应用开发之打包与上架
ArkUI-X跨平台已至,何需其它!
我们之前可能更多接触的是ArkUI,我们都知道ArkUI是一套构建分布式应用的声明式UI开发框架。如今ArkUI-X进一步将ArkUI扩展到了多个OS平台:目前支持OpenHarmony、HarmonyOS、Android、 iOS,四个平台。未来也会支持更多的平台。
徐建国
2023/12/28
8360
ArkUI-X跨平台已至,何需其它!
推荐阅读
相关推荐
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档