unity调用java方法一共有四种形式,分别是:
- 没有返回值的普通方法
AndroidJavaObject jo = new AndroidJavaObject("android.content.res.Configuration");
jo.Call("setToDefaults");
- 带有返回值的普通方法
AndroidJavaObject jo = new AndroidJavaObject("java.lang.String", "some string");
int hash = jo.Call<int>("hashCode");
- 没有返回值的静态方法
AndroidJavaObject jo = new AndroidJavaObject("android.os.Binder");
jo.CallStatic("flushPendingCommands");
AndroidJavaClass jc = new AndroidJavaClass("android.os.Binder");
jc.CallStatic("flushPendingCommands");
- 带有返回值的静态方法
AndroidJavaObject jo = new AndroidJavaObject("java.lang.String");
string valueString = jo.CallStatic<string>("valueOf", 42.0);
AndroidJavaClass jc = new AndroidJavaClass("java.lang.String");
string valueString = jc.CallStatic<string>("valueOf", 42.0);
- 传递参数
需要传递的参数,直接写在调用函数里面
jo.Call("setToDefaults", param1, param2 ...);
jo.Call<int>("setToDefaults", param1, param2 ...);
jo.CallStatic("setToDefaults", param1, param2 ...);
jo.CallStatic<string>("setToDefaults", param1, param2 ...);
网友评论