gpt4 book ai didi

android - 从ndk中的jni方法调用另一个C++方法

转载 作者:太空狗 更新时间:2023-10-29 12:43:30 24 4
gpt4 key购买 nike

首先,我有一个如下所示的 JNIEXPORT 方法:

  JNIEXPORT void JNICALL Java_com_app_osap_Native_nativeProcessImage(JNIEnv *env, jobject thiz, jstring imagePath){
// ...
handle(data);
}

然后我在同一个cpp文件中写另一个方法:

 void handle(int data[]){

}

但是在编译源码的时候出现了这个错误:

   'handle' was not declared in this scope

请告诉我我的问题是什么以及我该如何解决。
提前致谢!

最佳答案

因为不使用header,所以需要在JNI函数之前声明handle函数。或者,您可以开始使用包含函数声明的 header ,然后将其包含在您的 cpp 文件中。喜欢:

测试.h:

void handle(int data[]);

测试.cpp

#include test.h

不要忘记在 Android.mk 中将 header 添加到模块中:

include $(CLEAR_VARS)
LOCAL_MODULE := test
LOCAL_SRC_FILES := path/to/test.cpp
LOCAL_C_INCLUDES := path/to/test.h #This is the header file you created
include $(BUILD_SHARED_LIBRARY)

关于android - 从ndk中的jni方法调用另一个C++方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21720943/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com