我制作并编译了一个Android库,其中包含一个简单的类和一个简单的静态函数:
package moo;
public class MyTestClass {
public static String Foo(){
return "Foo from Moo";
}
}
我将 .jar 放在我的 Assets/Plugins/Android 文件夹中。然后在Unity中:
void OnGUI () {
string somestring = "foooooooooooOOooo";
AndroidJavaClass testClass = new AndroidJavaClass("moo.MyTestClass");
somestring = testClass.CallStatic<string>("Foo");
GUI.Label (new Rect (20, 20, 100, 20), somestring);
}
我收到一个错误: JNI:无法找到“Foo”的方法 ID(静态) UnityEngine.AndroidJavaObject:CallStatic(String, Object[])
我是否缺少一些东西来调用我的静态方法? 谢谢!
最佳答案
据我所知,有两个问题:
- 你必须把你的jar包放到Assets/Plugins/Android/bin下;
- 您总是会在 Windows/Mac 编辑器上收到此错误,您必须在 Android 设备上运行此错误;
关于android - 从Unity3D调用静态jar函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16573986/