-
Creator 版本:3.8.3
-
目标平台: Android
根据官方文档https://docs.cocos.com/creator/3.8/manual/zh/advanced-topics/java-reflection.html
写了几个java和ts通信的方法,ts调用java的可以跑通,但是java调用ts的方法就不行。
有大佬指定这个是啥情况吗?
改为事件调用吧,
js:
native.jsbBridgeWrapper.addNativeEventListener(“TEST_EVENT”, args=>{
console.log(“receive Java=”+args);
});
native.bridge.sendToNative(“TEST_EVENT”);
java:
JsbBridge.setCallback(new JsbBridge.ICallback() {
@Override
public void onScript(String eventType, String arg0) {
Log.d(“receive Js”,eventType);
}
})
JsbBridge.sendToScript(“TEST_EVENT”, “param”);

把实例对象赋值给window.NativeAPIMgr
你java代码初始化了吗?
你直接在Appactivity.java onCreate(){内写注册}
你ts方法写的是静态方法啊
ts方法不能是静态方法?
就是在onCreate里面
你把类的实例赋值,又去调用它的静态方法,肯定不行啊
那我ts代码这边需要怎么改?
我刚才把静态去掉了,还是一样的
对啊,我一开始就是按照3.8的文档写的,然后就是java调不到ts
你写的这个类不用注册到window吗?

这是2.x的,3.8还不一样吗 
不知道,蛮试一下呗,也没官方的人来讲一下
还是不行···
java调用ts的方法有没有执行





