cocos creator js、ts如何调用java中的方法

cocos creator js、ts如何调用java中的方法


如果想要在js或ts中调用andorid方法,可以使用反射,看下面的方法:

jsb.reflection.callStaticMethod(className, methodName, methodSignature, parameters...)

然后我举个栗子:

public doVibrate(isShort: boolean = true) {
    jsb.reflection.callStaticMethod("com/xxxx/Admopub/AdmopubHelper", "doVibrate", "(Z)V", isShort)
}

下面结合说明一下:

  • className,是java中的类名,要带上路径,是相对路径,栗子中的是"com/xxxx/Admopub/AdmopubHelper"
  • methodName,是java类中的静态方法"doVibrate"
  • methodSignature,是方法签名,看下面的表,栗子中是"(Z)V"
  • parameters,是你需要传入的参数,需要和前面的methodSignature配合使用,栗子中传入的是isShort

说完了使用,再说下签名的使用:

  • 我在java里面写的public static void doShake(boolean isShort),是一个类型boolean的参数,返回是void,所以调用就使用(Z)V
  • 如果有一个方法是public static int func(),那调用如下,其他就不用解释了:
     jsb.reflection.callStaticMethod("com/xxxx/Admopub/AdmopubHelper", "func", "()I");
    

类型 签名
int I
float F
boolean Z
String Ljava/lang/String;

维尼聚合工具


猜你喜欢

转载自blog.csdn.net/S_clifftop/article/details/103205100
今日推荐