java.lang.UnsatisfiedLinkError: Native method not found:问题解决

这个问题一般是java声明的native方法名称和.c .h里面的函数名称不一样导致,特别注意项目更换的时候包的名称,因为.c .h里面的函数名称要加上在java里面包的名称。

如之前项目包名是:

package com.example.hellojni;


.c .h里面对应:

JNIEXPORT void JNICALL Java_com_example_hello_JniInterface_nativeInit
  (JNIEnv *, jobject);


移植so到其他工程,

新工程包

package com.example.test;

则.c ..h需要更改成如下:

JNIEXPORT void JNICALL Java_com_example_test_JniInterface_nativeInit
  (JNIEnv *, jobject);

猜你喜欢

转载自blog.csdn.net/hxl5955/article/details/51879528