Androidstudio3.0 第一个jni
----------------------木君
目的:主要是android studio3.0 之后jni 规则有很大改动,如果使用新版本的 IDE但是使用的是老版本的教程,就会有很多问题,导致so调用不到,程序闪退,或者直接无法编译。
1、 创建新工程的时候,勾选includeC++ support 会得到一个native-lib的实例,
里面会有一个全新的jni结构(第二项 kotlin其实是一种可以把Java编译成字节码的库,暂时没有使用,据说可以运行在没有java虚拟机的环境,大家都知道java运行需要java虚拟机去解析的)
2、 新版本主要差异化如下,使用了全新的CMake结构
3、新添加的C++代码都要放到 CMakeLists.txt
相关的so目录,和以前差异很大,之前版本
图一 之前项目so存放目录
图二旧版本版本 jni 结构模式 so存放目录
图三 直接编译出了各个平台的版本
推测:新版是要将C++ 和 java放在一起,看起来是一个东西,取消了之前建立jni目录,这样更加清晰的做c和C++开发吧,具体是什么原因,有待发现。