Android的调用C++代码报错解决办法汇总

 

  汇总Android通过JNI调用C++代码遇到的错误


  IDE:Android Studio BumBlebee | 2021.1.1  

  1. dlopen failed: library "libnative-lib.so" not found

   1.1在CMakeLists.txt中检查Android studio有没有帮我们编译native-lib.cpp文件并链接

  • 发现链接的library的名字是我们的项目的名字。

   

  • 然后向上翻找到add_library,发现Android studio把我们native-lib的library name设置为了项目名称。

   

 

 

    

  1.2. 发现了问题所在,有两个解决办法,实际上还是一种,哈哈

  • 方法一:在静态代码块里,把native-lib改为:项目名称。

   

 

  • 方法二:在CMakeLists.txt把在上述的1.1中的项目名称改成native-lib即可。

    

 

    

 

   1.3.重新编译运行程序,如果没有其他问题,应该就可以。

posted @ 2022-03-12 00:25  何以卿卿  阅读(1094)  评论(0编辑  收藏  举报