Skip to content

发布 Huawei HarmonyOS 应用

从 v3.2 开始,Cocos Creator 支持将游戏打包为 HarmonyOS 应用(.hap)。

准备工作

发布流程

使用 Cocos Creator 构建

  1. 使用 Cocos Creator 打开项目工程,点击上方菜单栏中的 Cocos Creator/File -> 偏好设置 -> 外部程序,配置 HarmonyOS NDKHarmonyOS SDK 路径:

    preferences

  2. 菜单栏 -> 项目 中打开 构建发布 面板。在 构建发布 面板的 发布平台 中选择 HarmonyOS,根据需要配置 构建选项 然后点击右下方的 构建 按钮。

    build

    注意

    1. HarmonyOS 展开项中的 应用 ID 名称 需要与在 AppGallery Connect 后台添加 HarmonyOS 应用时的包名保持一致。
    2. 由于 HarmonyOS 已全面支持 GLES3 渲染后端,因此在 v3.4.2 中我们移除了 HarmonyOS 展开项中的 Render BackEnd 选项。
  3. 构建完成后打开项目目录,可以看到在 native\engine 目录下生成了 ohos 文件夹,该文件夹就包含了构建生成的 HarmonyOS 工程。

    package

    注意:因为 HarmonyOS 暂时不支持多目录构建,所以生成的 HarmonyOS 工程在 native\engine 目录下,与其他平台生成在项目目录 build 目录下的不同。

    然后使用 HUAWEI DevEco Studio 打开 ohos 文件夹即可执行进一步的编译运行,详情请查看下文介绍。

通过 HUAWEI DevEco Studio 编译运行

  1. 打开 HUAWEI DevEco Studio,点击 打开项目,选择上个步骤构建后生成的 HarmonyOS 工程(ohos 文件夹)。

    open-project

  2. 准备签名文件,签名文件的获取方式请参考下文 签名文件 部分的内容。

  3. 配置签名文件。点击 DevEco Studio 菜单栏中的 File -> Project Structure,选择 Modules -> entry,在 Signing Configs 页面 配置签名信息

    sign configs

    然后继续在 Project -> Signing Configs 中配置签名信息。

    设置完成并保存后,配置的签名信息可以在项目目录下的 native\engine\ohos\entry\build.gradle 文件中查看。

    根据构建类型(Debug/Release)的不同以及是否带签名信息,开发者可根据需要自行组合配置,详情请参考 编译构建生成 HAP

    build variants

  4. 然后点击菜单栏中的 Build -> Build Hap(s)/APP(s) -> Build Hap(s) 项,即可执行编译流程,生成 .hap 文件。

    build hap

    编译完成后可以在项目目录的 native\engine\ohos\build\outputs\hap 目录下看到生成了带有签名信息的 .hap 文件。

    output

    所有带/不带签名信息的 .hap 文件则是全部生成在项目目录的 native\engine\ohos\entry\build\outputs\hap 目录下。

    output

  5. 使用 USB 连接 HarmonyOS 系统的华为设备,然后点击菜单栏中的 Run -> Run ‘entry’,或者点击上方的运行按钮,即可将 HarmonyOS 应用运行到设备上。详情可参考 运行 HarmonyOS 应用

    run project

    注意:若运行到设备上时发现找不到图标,可检查一下项目目录下的 native\engine\ohos\entry\src\main\config.json 中是否有 installationFree 字段并为 true,将其改为 false 即可。

  6. 若需要上传并发布 HarmonyOS 应用到华为应用市场,具体流程请参考官方文档 发布 HarmonyOS 应用指南

签名文件

HarmonyOS 应用是通过数字证书(.cer 文件)和 HarmonyAppProvision 文件(.p7b 文件)来保证应用的完整性。首先需要通过 DevEco Studio 生成密钥和证书请求文件,再通过证书请求文件在 AppGallery Connect 申请用于发布/调试的数字证书和 Profile 文件。

生成密钥和证书请求文件

DevEco Studio 中点击上方菜单栏的 Build -> Generate Key and CSR,生成密钥(.p12 文件),然后再生成证书请求文件(.csr)。详情请参考 生成密钥和证书请求文件

生成并下载数字证书(.cer 文件)

  • 进入 AppGallery Connect 网站,选择 用户与访问 -> 证书管理

    provision profile

  • 点击右上角的 新增证书 按钮填写信息,其中:

    • 证书类型:根据需要选择 发布证书/调试证书

    • 证书请求文件:选择上一个步骤在 DevEco Studio 中生成的 .csr 文件。

  • 信息填写完成后点击 提交,便会生成一个发布/调试证书(.cer 文件),点击证书后面的 下载 按钮将其下载到本地。

更多内容可参考 申请数字证书

生成并下载 HarmonyAppProvision Profile 文件(.p7b 文件)

  • 进入 AppGallery Connect 网站,选择 我的项目,选择之前创建的 HarmonyOS 项目和应用。

  • 点击左侧的 HarmonyOS 应用 -> HAP Provision Profile 管理 项,然后点击页面右上方的 添加 按钮来创建 .p7b 文件。

    provision profile

    • 类型 可根据需要选择 发布/调试 类型,但要与上一步骤中的证书类型保持一致。
    • 选择证书:选择上一步骤生成的 .cer 文件。
    • 选择设备:请参考 注册调试设备。当选择 发布 类型时不需要配置该项。
  • 设置完成后点击 提交,将生成的 .p7b 文件下载到本地。

更多内容可参考 申请 Profile 文件

已知问题

  • WebView 不支持 touch 事件,触碰无响应。
  • VideoPlayer 播放远程视频不可拖动。
  • EditBox 全屏不可缩小,键盘收回后不重新布局。
  • 重力/加速传感器延迟 500ms 左右,跟手性差。

相关参考链接