如何从C类调用函数&该类在prebuild .so文件中进入新项目的C类。例如,我有一个项目-1 创建一个prebuild .so文件。现在在这个项目中我有一个名为" androidNdk"的C类。 在这个类中,我只有一个返回整数值的函数。
int myFunction()
{
int number = 10;
return number;
}
我创建一个新项目并加载此.so文件并在C类中调用myfunction()。像这样 这是一个名为" newAndroidNdk"。
的新类void newFunction()
{
int str = myFunction();
printf("%s", str);
}
问题是当我使用ndk-build命令编译这个项目时,它会给我这个错误 "对myfunction的未定义引用"。
这是jni中的Android.mk - > lib文件夹
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libndkfunction-prebuilt
LOCAL_SRC_FILES := libndkfunction.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
include $(PREBUILT_SHARED_LIBRARY)
这是新项目Android.mk文件
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
# Here we give our module name and source file(s)
LOCAL_MODULE := ndkfun
LOCAL_SRC_FILES := ndkfun.c
LOCAL_SHARED_LIBRARIES := libndkfunction-prebuilt
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/jni/include
include $(BUILD_SHARED_LIBRAR
帮我解决这个问题