我正在使用 android NDK 在我的应用程序中使用一个 c++ 库。当我运行我的应用程序时,我总是收到一条错误消息,即java.lang.UnsatisfiedLinkError: Native method not found.
我多次检查了我的代码但我没有找到任何东西。此外,我收到了另一条错误消息No rule to make target all.
LOCAL_C_INCLUDES += ${NDKROOT}/sources/cxx-stl/stlport/stlport
LOCAL_PATH := $(call my-dir)
LOCAL_ALLOW_UNDEFINED_SYMBOLS = true
include $(CLEAR_VARS)
LOCAL_MODULE := my-module-jni
LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*/*.cpp)
include $(BUILD_SHARED_LIBRARY)
extern "C" {
JNIEXPORT jstring JNICALL
Java_com_test_ndk_MyClassName_test
(JNIEnv *env, jobject obj)
{
return env->NewStringUTF("Hello from C++ over JNI!");
}
}
public class MyClassName extends Activity{
public static native String test();
......
}
在我的 jni 文件夹中,我有许多 c++ 类和文件夹。我认为问题是我的 android.mk 文件。我应该在我的 android.mk 文件中更改什么?