如何在 jni 函数中使用整数和布尔值作为输入参数?

How to use integers and booleans as input parameters in a jni function?

我想在我的 java 代码中调用一个带有一些整数参数的 jni 函数

JAVA代码

invokeNativeFunction(integer1, integer2, boolean1);

C代码

jstring Java_com_any_dom_Eservice_invokeNativeFunction(JNIEnv* env, jobject obj,
                                                    jint integer1, // is it correct to put jint?
                                                    jint integer2,
                                                    jbool boolean1) {
}

如何在 jni 函数中使用整数和布尔值作为输入参数?

这是您编写本机函数的方式

Java

private native void func(int length, boolean flag)

现在使用javah,生成.h文件。它将为您自动生成函数声明

JNIEXPORT void JNICALL Java_com_lgc_gstream_client_client_func (JNIEnv *, jobject, jint, jboolean);

在某个文件中包含这个头文件并编写函数的定义。您可以在代码中使用 jint 和 jboolean,就像 C++ 中的普通 int 和 bool