java.lang.UnsatisfiedLinkError: Native method not found
Question: I'm trying to make a NDK application, but i get this error java.lang.UnsatisfiedLinkError: Native method not found: com.example.hellondk.jni.HelloNDK.hello:()I I don't understand because the name of the C++ funtion is the same as the java packagename and class HelloNDK.cpp #include <jni.h> JNIEXPORT jint JNICALL Java_com_example_hellondk_jni_HelloNDK_hello ( JNIEnv * env , jobject o ){ return ( jint ) 2 ; } HelloNDK.java package com . example . hellondk . jni ; public class HelloNDK { public native int hello (); static { System . loadLibrary ( "HelloNDK" ); } } Android.mk LOCAL_PATH := $ ( call my - dir ) include $ ( CLEAR_VARS ) LOCAL_MODULE := HelloNDK LOCAL_SRC_FILES := HelloNDK . cpp include $ ( BUILD_SHARED_LIBRARY ) Solution 1: You're exporting it as a C++ function, but the JNI linker doesn't understand C++ name mangling, so it won't be able to find...