[LayaAir 2.0]native二次开发java怎样调用js方法?

js调用native层的方法官网文档写得比较清楚,但是反过来native调用js代码不知道怎么弄。我看java层有ExportJavaFunction这个类,里面的方法好像是java调用js方法的,但是不知道方法参数怎么写。比如 callMethod(string,string,string) 这个方法,三个参数代表什么?
已邀请:

happyfire

赞同来自:

日行一善

首先在游戏(js/ts)这边给window对象注册一个方法:

window["natvieCallJs"] = function(msg,data){
 
}.bind(this);
然后,Java这边:
public static void callToJs(int msg, JSONObject data) {
StringBuilder cmd = new StringBuilder("window.natvieCallJs(");
cmd.append(msg);
cmd.append(',');
cmd.append(data);
cmd.append(')');
Log.d("JSBridge", "callToJs:" + cmd);
ConchJNI.RunJS(cmd.toString());
}

Aar0n

赞同来自:

ConchJNI.RunJS("alert('hello world')"); 最后一行有 java 调用js的方法

要回复问题请先

商务合作
商务合作