Android Studio通过CMakeList集成so库

该教程的工作环境,AS版本3.5  gradle tool版本3.5.3  gradle版本5.4.1-all

Android Studio通过创建c++项目就可以创建一个支持jni开发的工作空间了。其中的cmake下面会有c++文件生成的so库。

Android Studio通过CMakeList集成so库

 

现在的AS需要这样配置CMakeList文件,引入so库和头文件。

Android Studio通过CMakeList集成so库

build.gradle需要这样配置:

Android Studio通过CMakeList集成so库

至于jni的工作流程,简要叙述一下,就是java中写native方法。然后既可以用javah生成头文件,再修改为.c的文件。然后在文件中写方法的c代码实现。也可直接按照规则写c代码。放的目录在这儿,cpp的下面放头文件,jniLibs放so文件:

Android Studio通过CMakeList集成so库

通过这些配置,系统自带的so库native-lib的cpp文件中,就可以通过引入我们的头文件,来调用我们的so库里面的方法了。所谓so库,就是c代码被打包了。里面提供的方法,都展示在了头文件中了。