I made a plugin for my android game And for calling this plugin in my unity scripts I do not know to use AndroidJavaObject
or AndroidJavaClass
.
Because in some of the tutorials that I saw, they doing something like this :
AndroidJavaObject test = new AndroidJavaObject("com.aaa.bbb.ccc");
test.Call<string>("tester");
and in otherone tutorials :
AndroidJavaClass test = new AndroidJavaClass("com.aaa.bbb.ccc");
myClass.Call("testMethod", new object[] { "testString" } );
and in some others they do :
AndroidJavaClass test = new AndroidJavaClass("com.aaa.bbb.ccc");
AndroidJavaObject unityActivity = test.GetStatic("currentActivity");
I just want to know what is difference between this ways ? And Which one is better?
AndroidJavaObject
is for creating instances of that class and calling instance methods on it.
AndroidJavaClass
is for calling static class methods or accessing static fields.
Depending on the java API you have to you use either AndroidJavaObject
or AndroidJavaClass
.