Cannot resolve corresponding JNI function 一个可能的原因

初学AS c++开发的时候, 有的时候会借鉴别人的代码,总是发现放在自己的项目里就不能跑

即使是直接复制也可能会有问题

其实是因为没有搞清楚JNI的意义

下面是一个红色的样例

Cannot resolve corresponding JNI function 一个可能的原因

以下是对应的在native-lib.cpp的代码

Cannot resolve corresponding JNI function 一个可能的原因

注意上图函数名, 除了原函数外, 前面还有一段前缀,其中中间部分是我们自己创建的package包的名称,如我的package名称如下

Cannot resolve corresponding JNI function 一个可能的原因

MainActivity则表示实现是在MainActivity.java里

所以直接复制代码的时候记得package的名称改成自己的

 

另外这里有一些其他可能的原因: https://stackoverflow.com/questions/42914167/cannot-resolve-corresponding-jni-function-android-studio