如何从JNI返回枚举

在Java中,我有:

public class MyClass{

public enum STATUS {

ZERO,

ONE ,

TWO

}

public native STATUS nativeGetStatus();

...

private STATUS state = nativeGetStatus(); //returns enum

private STATUS state2 = nativeGetStatus(); //returns enum

}

我希望本机方法“ nativeGetStatus”返回此枚举值。

JNI返回整数并与java中的enum的值进行比较是一个选项,但是想知道是否可以通过jobject返回值并将其直接分配给state吗?如果是,怎么办?

回答:

当然可以。枚举值是Enum类的公共静态字段,因此您可以使用此官方手册编写代码。只需从JNI获取字段并将其作为jobject返回即可。

以上是 如何从JNI返回枚举 的全部内容, 来源链接: utcz.com/qa/428643.html

回到顶部