这适用于 Java 字符串:
public native Entity[] getALLEntityTYPES(String entityType);
<小时/>
extern "C"
JNIEXPORT jobjectArray JNICALL
Java_my_jni_project_getALLEntityTYPE(JNIEnv *env, jobject instance, jstring entityType_) {
const char *entityType = env->GetStringUTFChars(entityType_, 0);
<小时/>
如何在 JNI 中将 Java 长对象传递给 C:
public native String getEntityTypeByEntityGUID(Long entityGUID);
<小时/>
提前谢谢大家。
最佳答案
如果您可以传递 long 而不是 Long,请查看此处传递基本类型的完整示例
http://jnicookbook.owsiak.org/recipe-No-011/
如果你想传递 Long (作为对象),请看这里
http://jnicookbook.owsiak.org/recipe-No-020/
其中显示了从对象获取值的示例代码。当然,在您的情况下,您需要访问 Long 类的字段。
更新
对于拆箱(Long
、Boolean
、Integer
等)示例,请查看此处:
https://github.com/mkowsiak/jnicookbook/tree/master/recipes/recipeNo055
关于java - 如何在 JNI 中将 Java 长对象传递给 C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51588895/