Android库和Unity插件通信问题。无法引用枚举类型并向android传回按钮事件

Android库和Unity插件通信问题。无法引用枚举类型并向android传回按钮事件,android,plugins,enums,unity3d,Android,Plugins,Enums,Unity3d,我是Unity的新手,我正在尝试为Android库创建Unity插件,我面临以下问题: 1) 我找不到将后退按钮事件传递到Android库的方法。我所做的是通过设置以下行将触摸事件传递给Android端的活动 <meta-data android:name="unityplayer.ForwardNativeEventsToDal vik" android:value="true" /> 但是,我需要选择将我捕获的事件传递回库,而不是在Unity层处理它 2) 我试图在我的脚本中引

我是Unity的新手,我正在尝试为Android库创建Unity插件,我面临以下问题:

1) 我找不到将后退按钮事件传递到Android库的方法。我所做的是通过设置以下行将触摸事件传递给Android端的活动

<meta-data android:name="unityplayer.ForwardNativeEventsToDal vik" android:value="true" />
但是,我需要选择将我捕获的事件传递回库,而不是在Unity层处理它

2) 我试图在我的脚本中引用Android库中的枚举

例如,我在
Place.java
文件中有以下枚举

package com.myapp.constants;

public enum Place { TOP, BOTTOM, RIGHT, LEFT }
我想找到一种从我的脚本中引用它的方法

我试过这样的方法:

AndroidJavaClass topPlace = new AndroidJavaClass("com.myapp.constants.TOP");
但是没有运气

有人能在这些问题上提供帮助吗?任何帮助…

2)Java中的枚举是一个常规类,其枚举值是该类的实例,存储在静态字段中。因此,要获得它们,您可以这样做:

AndroidJavaObject topValue = new AndroidJavaClass("com.myapp.constants.Place").GetStatic<AndroidJavaObject>("TOP");
androidjavaobjecttopvalue=newandroidjavaclass(“com.myapp.constants.Place”).GetStatic(“TOP”);
2)Java中的枚举是一个常规类,其枚举值是该类的实例,存储在静态字段中。因此,要获得它们,您可以这样做:

AndroidJavaObject topValue = new AndroidJavaClass("com.myapp.constants.Place").GetStatic<AndroidJavaObject>("TOP");
androidjavaobjecttopvalue=newandroidjavaclass(“com.myapp.constants.Place”).GetStatic(“TOP”);

Vladimir感谢您的回答。你也知道问题的一部分的答案吗?我对安卓系统的知识还不够多,不能说。最坏的情况是,直接调用Java插件即可。如果您正在编写它,为什么不呢?直接调用Java插件是什么意思?我在Unity层中捕获事件?如何将其传递到Java库层?如果您正在编写插件,那么您可以使用AndroidJavaClass/Object获得自己的Java类,并对其调用方法,就像上面的枚举一样。但是你已经知道了-所以我想这里有一个不同的问题我不明白。奇怪的是Unity层阻止像Android中的back key事件这样的事件传递到Java层..Vladimir谢谢你的回答。你也知道问题的一部分的答案吗?我对安卓系统的知识还不够多,不能说。最坏的情况是,直接调用Java插件即可。如果您正在编写它,为什么不呢?直接调用Java插件是什么意思?我在Unity层中捕获事件?如何将其传递到Java库层?如果您正在编写插件,那么您可以使用AndroidJavaClass/Object获得自己的Java类,并对其调用方法,就像上面的枚举一样。但是你已经知道了-所以我想这里有一个不同的问题我不明白。奇怪的是Unity层阻止像Android中的back key事件这样的事件传递到Java层。。