[英]calling java method from unity c#
Hello everyone, Can anyone tell me how to call java methods from unity c#. 大家好,谁能告诉我如何从统一c#调用Java方法。 I tried the following but its not working for me.
我尝试了以下方法,但对我不起作用。
In Unity : 在Unity中:
void OnGUI () {
string somestring;
AndroidJavaClass jc= new AndroidJavaClass("com.example.pluginsample.MainActivity");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("instance");
somestring = jo.Call<string>("Foo");
GUI.Label (new Rect (20, 20, 100, 20), somestring);
}
In Java Class: 在Java类中:
public String Foo()
{
return "Hello";
}
Please help.I am stuck.Thanks in advance. 请帮助。我被困住了。谢谢。
Exactly what "isn't working"? 究竟是什么“不起作用”? Is there an exception?
有例外吗?
Check your java class has an instance() method that returns the java object: 检查您的Java类是否具有返回Java对象的instance()方法:
public String Foo()
{
return "Hello";
}
public static MainActivity instance() {
return new MainActivity();
}
There are several things to be checked: 有几件事要检查:
instance
class property (static variable) in you plugin activity? instance
类属性(静态变量)? Foo
method to be static? Foo
方法为静态方法吗? Let me know if this solution still does not work. 让我知道此解决方案是否仍然无效。
Make the function “Foo” public static as below 使函数“ Foo”成为公共静态,如下所示
public static String Foo()
{
return "Hello";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.