使用Cocos Creator引擎构建鸿蒙游戏

游戏HarmonyOS NEXT适配流程如下:

适配准备:

  1. 前往开发者官方网站下载最新的release版本版本开发者工具DevEco Studio。
  2. 前往Cocos官网下载最新版本的引擎版本。

游戏适配

  1. 升级引擎版本。Cocos Creator 2.x 游戏升级到 Cocos Creator 2.4.15及以上。Cocos Creator 3.x 游戏升级到 Cocos Creator 3.8.6(正式版本若发布,请至Cocos官方论坛下载社区版本)及以上。

如需定制引擎,请参考Cocos Creator 2.x指导文档,Cocos Creator 3.x指导文档定制引擎。

  1. 增加HarmonyOS NEXT平台的分支业务处理。

如果涉及引擎版本升级,需要解决各引擎升级兼容性问题,比如依赖库版本升级、API接口变更等,确保游戏代码没有编译报错。

例如:
if(cc.sys.os == cc.sys.OS_ANDROID){ 
// 游戏逻辑 
}
修改为:
if(cc.sys.os == cc.sys.OS_ANDROID || cc.sys.os == cc.sys.OS_OPENHARMONY){
 // 游戏逻辑 
}

导出HarmonyOS NEXT工程

  • 游戏适配完成后,用对应引擎Editor构建出HarmonyOS NEXT工程,再进行打包。
  • 关于JS引擎的选择请参考,涉及到JIT和热更新策略的选择,当前推荐选择JSVM,具体的js引擎介绍请参见JS引擎。
  1. 构建HarmonyOS工程。

     a.打开构建发布面板
    
     b.发布平台选择HarmonyOS NEXT
    
     c.选择合适的屏幕朝向
    
     d.点击构建生成HarmonyOS NEXT工程
    
    1. 构建完成后使用Deveco Studio打开HarmonyOS NEXT工程。

      Cocos Creator 2.x的HarmonyOS NEXT工程相对游戏项目路径为: build\jsb-link\frameworks\runtime-src\proj.harmonyos-next。

      Cocos Creator 3.x的HarmonyOS NEXT工程相对游戏项目路径为: native\engine\harmonyos-next。

JS引擎

Cocos Creator提供了三种JS引擎给开发者,分别是方舟引擎,V8引擎和JSVM。在方舟引擎中,游戏的JavaScript代码和HarmonyOS NEXT的ArkTs均运行在方舟引擎环境中。V8引擎和JSVM中,游戏JS代分别运行在V8引擎和JSVM的环境中,而HarmonyOS NEXT的ArkTs则运行在方舟引擎上,运行环境不同所带来的差异就是游戏JS和HarmonyOS NEXT ArkTs的执行环境的差异。在方舟引擎中,JS和ArkTs在同一个JS运行环境,因此全局对象是可以访问到的;在V8和JSVM引擎下,游戏的JS分别运行在V8和JSVM环境中,因此需要通过C++去桥接,这里Cocos官方提供了封装好的接口用于接口通信,这块内容将在下一节的内容中展开说明。当前的JS引擎关于热更新的方案如表格所示,方舟引擎暂时不支持热更新,V8引擎和JSVM支持热更新,因此在选择JS引擎时推荐选择JSVM。

JS引擎 JIT 热更新
方舟 暂不支持 暂不支持
V8 不支持 支持
JSVM 支持 支持

HarmonyOS NEXT工程结构说明

集成应用服务

游戏服务: 官方指导文档,应用内支付:官方指导文档

参考游戏服务和应用内支付接入SDK,其中游戏与HarmonyOS NEXT ArkTs如何交互请参见游戏与HarmonyOS NEXT ArkTS接口交互。

  • 游戏服务Kit接入

调试上架

  • 配置证书签名信息,参考应用/元服务签名
  • 调试阶段:构建hap包进行调试功能验收,需要申请调试证书、注册调试设备、申请调试Profile,具体操作请参见调试HarmonyOS应用/元服务
  • 发布阶段:构建app包提审上架,需要申请发布证书、申请发布Profile、发布HarmonyOS应用,具体操作请参见发布应用(APP)

更多内容请见:鸿蒙游戏开发者服务-鸿蒙游戏中心-游戏分发平台-华为开发者联盟
社群交流:
image

3赞

mark!!