HarmonyOS 初体验 (五)发布应用

  1. 上一篇

    1. HarmonyOS 初体验 (四)项目运行
  2. 发布应用
    1. 注册华为开发者联盟帐号
    2. 实名认证
    3. 通过DevEco Studio来生成密钥和证书请求文件
  3. 注册华为开发者联盟帐号
    1. https://developer.huawei.com/consumer/cn/doc/start/registration-and-verification-0000001053628148
  4. 实名认证
    1. 企业开发者实名认证

    2. 个人开发者实名认证
  5. 通过DevEco Studio来生成密钥和证书请求文件。
    1. 概要
      1. 密钥:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格式为.p12,公钥和私钥对用于数字签名和验证。
      2. 证书请求文件:格式为.csr,全称为Certificate Signing Request,包含密钥对中的公钥和公共名称、组织名称、组织单位等信息,用于向AppGallery Connect申请数字证书。
      3. 数字证书:格式为.cer,由AppGallery Connect颁发。
      4. Profile文件:格式为.p7b,包含元服务的包名、数字证书信息、描述元服务允许申请的证书权限列表,以及允许元服务调试的设备列表(如果元服务类型为Release类型,则设备列表为空)等内容,每个元服务包中均必须包含一个Profile文件。
    2. 操作
      1. 菜单选择“Build > Generate Key and CSR”

      2. Key Store File可以点击“Choose Existing”选择已有的密钥库文件(存储有密钥的.p12文件),跳转至步骤4继续配置;如果没有密钥库文件,点击“New”,跳转至步骤3进行创建。
      3. 在“Create Key Store”界面,填写密钥库信息后,点击“OK”。
        1. Key store file:设置密钥库文件存储路径,并填写p12文件名。
        2. Password:设置密钥库密码,必须由大写字母、小写字母、数字和特殊符号中的两种以上字符的组合,长度至少为8位。请记住该密码,后续签名配置需要使用。
        3. Confirm password:再次输入密钥库密码。
      4. 在“Generate Key and CSR”界面继续填写密钥信息后,点击“Next”。
        1. Alias:密钥的别名信息,用于标识密钥名称。请记住该别名,后续签名配置需要使用。
        2.   Password:密钥对应的密码,与密钥库密码保持一致,无需手动输入。
        3.   Validity:证书有效期,建议设置为25年及以上,覆盖应用/元服务的完整生命周期。
        4.   Certificate:输入证书基本信息,如组织、城市或地区、国家码等。
      5. 在“Generate Key and CSR”界面设置CSR文件存储路径和CSR文件名,点击“Finish”。
      6.  CSR文件创建成功后,将在存储路径下获取生成密钥库文件(.p12)和证书请求文件(.csr)。

    3.   申请发布证书
      1.   描述
        1. 发布证书由AGC颁发的、为HarmonyOS应用配置签名信息的数字证书,可保障软件代码完整性和发布者身份真实性。证书格式为.cer,包含公钥、证书指纹等信息。
        2. 说明:请确保您的开发者帐号已实名认证。每个帐号最多申请1个发布证书。
      2.   登录AppGallery Connect,选择“用户与访问”。

      3. 在左侧导航栏点击“证书管理”,进入“证书管理”页面,点击“新增证书”。

      4. 在弹出的“新增证书”窗口填写要申请的证书信息,点击“提交”。

        参数

        说明

        证书名称

        不超过100个字符。

        证书类型

        选择“发布证书”。

        选取证书请求文件(CSR)

        上传生成密钥和证书请求文件时获取的.csr文件。

      5. 证书申请成功后,“证书管理”页面展示证书名称等信息。点击“下载”,将生成的证书保存至本地,供后续签名使用。

    4.   创建应用
      1.   登录AppGallery Connect, 点击“我的应用”
      2. 点击应用列表右侧的“新建”。

      3. 填写应用参数,完成后点击“确认”。系统跳转到“应用信息”页面。

      4. 如您尚未签署华为智慧分发平台合作协议,此时会弹出协议对话框。勾选“我已阅读并同意华为智慧分发平台合作协议”,点击“我同意”,完成协议签署。

      5. 如新建的是“应用”类型的元服务,还会弹出华为CPS合作协议与鲸鸿动能媒体服务协议。如您的元服务有支付或变现相关业务,建议您完成签署,否则可能影响应用上架。

      6. 返回应用列表,在“HarmonyOS”页签查看已创建应用。点击应用名称,可进入应用详情页面。

    5. 申请发布Profile

      1. 登录AppGallery Connect,选择“我的项目”
      2. 找到您的项目,点击您创建的HarmonyOS应用。
      3. 在左侧导航栏选择“HarmonyOS应用 > HAP Provision Profile管理”,进入“管理HAP Provision Profile”页面,点击右上角“添加”。

      4. 在弹出的“HarmonyAppProvision信息”窗口中添加Profile,完成后点击“提交”。

      5. 发布Profile申请成功后,“管理HAP Provision Profile”页面展示Profile名称、类型等信息。点击“下载”,将生成的Profile保存至本地,供后续签名使用。

    6. 配置签名信息

      1. 打开DevEco Studio,菜单选择“File > Project Structure”,进入“Project Structure”界面。
      2. 导航选择“Project”,点击“Signing Configs”页签,取消“Automatically generate signature”勾选项,然后配置工程的签名信息,完成后点击“OK”。
        1.   Store file:密钥库文件,选择生成密钥和证书请求文件时生成的.p12文件。
        2.   Store password:密钥库密码,需要与生成密钥和证书请求文件时设置的密钥库密码保持一致。
        3.   Key alias:密钥的别名信息,需要与生成密钥和证书请求文件设置的别名保持一致。
        4.   Key password:密钥的密码,需要与生成密钥和证书请求文件时设置的密码保持一致。
        5.   Sign alg:固定设置为“SHA256withECDSA”。
        6.   Profile file:选择申请发布Profile时下载的.p7b文件。
        7.   Certpath file:选择申请发布证书时下载的.cer文件。
    7.   编译打包应用
      1.   软件包规范
        1. 规范

          说明

          APP包大小

          不超过4GB。

          HAP包大小

          在AGC上传APP包后,AGC将解析检测APP包中的HAP包大小,并根据HAP包声明支持的设备类型判断HAP包大小是否满足条件。如APP包大小符合条件,但HAP包超过上限,系统会提示HAP包过大,您仍无法成功上传APP包。因此请确保每个HAP包满足大小限制:
          • 不同设备类型的HAP包大小限制:运动手表/路由器不能超过20MB,手机/智能手表/大屏不能超过2GB。
          • 对于支持单设备的HarmonyOS应用软件包,HAP包大小不能超过对应设备类型的上限。例如,HarmonyOS应用软件包仅支持运动手表,则HAP包不能超过20MB。
          • 对于支持多设备的HarmonyOS应用软件包,如果APP包中的单个HAP包支持单个设备,则HAP包大小不能超过对应设备类型的上限。如果APP包中的单个HAP包支持多个设备,则HAP包大小不能超过这多个设备类型上限的最小值。
            注意

            当前仅智能手表应用支持配置付费下载。如需将应用分发至智能手表及其他设备(如运动手表+手机),且希望智能手表应用为付费下载应用,请将智能手表应用分开打包,即为智能手表单独创建一个应用,为其他设备(如运动手表+手机)创建另一个应用。

          HAP包类型

          一个HarmonyOS应用包内所有HAP包都必须是非免安装类型,即:

          • 如应用为FA模型,需保证每个HAP包的src/main/config.json文件中“installationFree”字段值均为“false”。
          • 如应用为Stage模型,需保证AppScope/app.json5文件的“bundleType”字段值为“app”(无“bundleType”字段则默认为“app”类型)。

          APP包名

          • 必须为以点号(.)分隔的字符串,且至少包含三段,每段中仅允许使用英文字母、数字、下划线(_),如“harmony_11.huawei.com ”。

            首段以英文字母开头,非首段以数字或英文字母开头,每一段以数字或者英文字母结尾,如“harmony99.huawei.11_com”。

            不允许多个点号(.)连续出现,如“harmony..huawei.com ”。

          • 长度为7~128个字符,且不可包含敏感词,不能将保留字符作为独立段呈现。以保留字符harmony为例,包名不能为harmony.huawei.com、com.harmony.huawei、com.huawei.harmony。

            保留字符包括如下:

            • oh
            • ohos
            • harmony
            • harmonyos
            • openharmony
            • system
      2. 操作步骤

        1. 打开DevEco Studio,菜单选择“Build > Build Hap(s)/APP(s) > Build APP(s)”。
        2. 等待编译构建。编译完成后,将在工程目录“build > outputs > default”目录下,获取可用于发布的应用包

    8. 上架HarmonyOS应用

      1. 配置应用信息

        1. 登录AppGallery Connect,选择“我的应用”
        2. 在应用列表首页中选择“HarmonyOS”页签,点击待发布的HarmonyOS应用名称。如应用较多,可点击“类型”下拉框仅筛选出HarmonyOS应用,或点击“支持设备”按设备类型筛选查找

        3. 在左侧导航栏选择“应用信息”菜单

        4. 在“应用信息”页面配置HarmonyOS应用的“基本信息”,具体要求如下表。

        5. 配置可本地化基础信息

        6. 填写应用名称、应用介绍、应用一句话简介(小编推荐)、新版本特性。

        7. 上传应用素材,包括应用图标、应用截图和视频,详情请参见附录-应用素材规范

        8. 设置应用分类

        9. 配置开发者服务信息

    9. 配置版本信息

      1. 配置HarmonyOS应用的“发布国家或地区”,详情请参见设置发布国家或地区

      2. 设置是否为开放式测试版本。

      3. 在“软件版本”下点击“软件包管理”后,在弹窗中点击“上传”。

      4. 在“上传包”窗口中点击“+”,上传应用的软件包。上传前请确保软件包满足以下要求。如果上传时出现错误提示,请参考FAQ定位处理。

      5. 配置HarmonyOS应用的“付费情况”和“应用内资费”,详情请参见设置应用付费情况

      6. 配置HarmonyOS应用的“内容分级”,详情请参见设置内容分级
      7. 如果涉及以下两种场景,请填写HarmonyOS应用的“应用隐私说明”,否则直接进行下一步。
      8. 填写HarmonyOS应用的“隐私声明”,详情请参见填写隐私声明
      9. 录入隐私标签信息

      10. 填写版权、版号信息

      11. 备案信息

        1. 卡在这里了。这里说是需要备案,但是我就一个单机应用,单机应用我查了一下说是不需要备案。因为在华为云备案必须要服务器,我一个单机应用要什么服务器?服了服了。单机应用上不了架了?哎。。。。

  6. 下一篇
    1. HarmonyOS 初体验 (六)了解包结构

posted @ 2023-12-22 15:21  zwjvzwj  阅读(47)  评论(0编辑  收藏  举报