Unity Android插件 - 如何调用onKeyDown方法?

时间:2016-10-13 10:45:30

标签: android unity3d plugins onkeydown

我写了一个安卓库,它的扩展名是.jar。我想在Unity中使用它。我使用了onKeyDown()方法但是当我调用AndroidJavaObject时,脚本不起作用。我怎样才能在Unity中调用onKeyDown方法?

编辑: Unity代码c#:

public AndroidJavaClass jc;
jc = new AndroidJavaClass("com.unitylib.unity.unitylib.StartActivity");
jc.Call ("onKeyDown");

Android代码:

public int x = 0 ;
public boolean onKeyDown(int keyCode, KeyEvent event) {

if (keyCode == event.KEYCODE_VOLUME_UP) {

        x = 2 ;

    }
return  true;
}

我也尝试从UnityActivity开始,但它没有用。

1 个答案:

答案 0 :(得分:1)

如果没有对象引用,则无法调用AndroidJavaClass.Call,因为它是公共的但不是静态的。

所以要么将对象引用(类的实例)作为AndroidJavaObject,然后从中调用。

或者更容易一点,如果可能的话,将onKeyDown设为静态,并使用AndroidJavaClass.CallStatic