Cocos3.8.8 JS 无法调用ArkTS的方法

  • Creator 版本:3.8.8
  • 目标平台:HarmonyOS Next,没有勾选“调试模式”
  • 手机型号:(使用的云调试)pura 90
  • sdk版本:HarmonyOS 6.0.2 Release SDK,原样包含OpenHarmony SDK Ohos_sdk_public 6.0.2.130 (API Version 22 Release)
  • 问题: 云调试输出的日志显示无法调用arkTS的方法。

AI分析日志的结论:Cocos Creator 默认的 native.reflection 桥接方式在 HarmonyOS NEXT 上不兼容,导致 JS 层无法获取原生 XComponent 对象( __NATIVE_XCOMPONENT_OBJ__ 缺失),进而引发一系列 API 调用失败。

cocos的场景中挂载的脚本主要代码如下:

import { _decorator, Component, Node, Vec3, input, Input, EventTouch } from 'cc';
const { ccclass, property } = _decorator;

@ccclass('PlayerController')
export class PlayerController extends Component {
 start() {
    console.log("===✅player: Cocos 启动成功");
    // 延迟 1 秒等待引擎稳定
    this.scheduleOnce(() => {
        this.callArkTS();
    }, 2.0);
 }

 callArkTS() {
    try {
        let result = native.reflection.callStaticMethod(
            "entry/src/main/ets/CocosTest",
            "entry/testSync",
            JSON.stringify({ msg: "hello" }),
            true
        );
        console.log("===✅ 调用成功,返回:" + result);
    } catch (e) {
        console.error("===❌player: 调用失败:", e);
    }
 }
}

deveco中代码如下:

// entry/src/main/ets/CocosTest.ets
export function testSync(paramStr: string): string {
  console.info("===✅ArkTS 收到 paramStr:" + paramStr);
  return "===返回:" + paramStr;
}

entry目录下build-profile.json添加的配置如下。

"targetSdkVersion": "5.0.3(15)"// 6.0.2(22)也尝试过,同样无法解决

希望有大佬能帮忙解决这个问题!!!