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

程序员一鸣
• 阅读 8

前言

本文基于Api13

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

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

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

配置签名信息

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

复制修改

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

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

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

配置代码如下:

"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修改为我们签名信息对应的即可。

"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,我这里把新的产品加上了。

{
      "name": "entry",
      "srcPath": "./entry",
      "targets": [
        {
          "name": "default",
          "applyToProducts": [
            "default",
            "release"
          ]
        }
      ]
    }

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

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

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

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

出包

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

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

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

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

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

本文标签:HarmonyOS应用上架。

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
SSL 证书格式普及
本篇文章就是来个大家普及一下证书的格式。根据不同的服务器以及服务器的版本,我们需要用到不同的证书格式,就市面上主流的服务器来说,大概有以下格式:.DER.CER,文件是二进制格式,只保存证书,不保存私钥。.PEM,一般是文本格式,可保存证书,可保存私钥。.CRT,可以是二进制格式,可以是文本格式,与.DER格式相同,不保存私钥。.PFX
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
Android应用程序架构
src/ java原代码存放目录gen/自动生成目录gen目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的资源,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R
少湖说 少湖说
7个月前
鸿蒙Flutter实战:08-如何调试代码
鸿蒙Flutter实战:如何调试代码1.环境搭建参考文章搭建好开发环境。IDE安装好DevEco和VsCode/AndroidStudio。2.配置如果是vscode,可以在.vscode/launch.json文件中,增加以下配置json"name":"
少湖说 少湖说
7个月前
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
鸿蒙应用打包上架流程创建应用新建项目1.在AppGalleryConnect,我的项目,添加项目。新建APPID1.在AppGalleryConnect,证书、APPID和Profile中。选择所属项目新建应用/元服务在APPID右侧,点击发布,会弹出发布
融云IM即时通讯 融云IM即时通讯
6个月前
融云IM干货丨如何为App Key配置HTTPS证书?
为AppKey配置HTTPS证书主要涉及以下几个步骤:生成密钥对和自签名证书:使用openssl工具生成密钥对和自签名证书,这是配置HTTPS的基础。可以通过以下命令生成:opensslgenrsaoutmykey.pem2048opensslreqnew
程序员一鸣 程序员一鸣
1个月前
HarmonyOS开发:手把手教你获取应用备案所需信息
无论是Android还是iOS,应用上架之前,备案是必须的,一般是有项目经理来推动,但是有些备案所需信息还是需要技术这边来提供的,比如应用的包名,公钥以及证书的MD5指纹等,那么对于鸿蒙,这些信息也是必须需要的。
程序员一鸣 程序员一鸣
13小时前
鸿蒙开发:应用上架第一篇,生成密钥和证书请求文件
以上的信息配置仅仅是上架前的一小步,仅仅完成了本地的秘钥和证书请求文件的生成,还未真正的配置好签名,在下一篇文章,我们重点概述下如何申请发布证书。
程序员一鸣 程序员一鸣
13小时前
鸿蒙开发:应用上架第二篇,申请发布证书
生成完发布证书Profile文件之后,我们就可以点击下载,留着后续备用,有一点需要知道,一个应用最多可申请100个Profile文件。
上海张律师 上海张律师
13小时前
鸿蒙地图功能开发【2. 申请Profile文件】##地图开发##
​如果使用鸿蒙的MapKit能力进行地图开发的话,需要在后台的API管理里面打开“地图服务”。如果是在原有项目上增加的话,那么……你需要去申请一个新的Profile文件我们按照新项目的流程去走注:新项目的意思是没有创建过Profile文件,而不是说在Dev