【发布时间】:2013-11-05 15:52:17
【问题描述】:
我有 c++ 类,其成员来自枚举类型。我想使用 jni 在 java 中公开此类中的对象。我已经为班上的所有成员成功地完成了它,但是我对 enum 类型的成员有问题。我用这种方式在java中定义了枚举
public enum Call {
UNDEFINED(-1), INCOMING(1), OUTGOING(2), MISSED(4);
private int type;
private Call(int type) {
this.type = type;
}
public int type() {
return this.type;
}
}
在c++中这样
enum Call {
UNDEFINED = -1,
INCOMING = 1,
OUTGOING = 2,
MISSED = 4
};
c++中原来的类是
class LogData{
int _id;
Call _calltype;
long _datetime;
int _duration;
}
在java中
public class LogDataJava{
int _id;
Call _callType;
long _dateTime;
int _duration;
}
对于如何在 jni 级别为枚举类型进行映射有什么建议吗?
【问题讨论】:
标签: java android c++ android-ndk java-native-interface