Android studio .a静态库的生成与调用

Posted meijiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android studio .a静态库的生成与调用相关的知识,希望对你有一定的参考价值。

创建JNI的hello程序

image.png
在cpp下创建include/calcul.h

image.png
calcul.h

//
// Created by Administrator on 2020/11/12.
//

ifndef JNITEST_CALCUL_H

define JNITEST_CALCUL_H

int add(int a , int b);

endif //JNITEST_CALCUL_H

写calcul.cpp来实现头文件calcul.h中的方法

image.png
calcul.cpp

include <jni.h>

include "include/calcul.h" //引用头文件,相当于java中实现接口,头文件为接口,本cpp为实现

int add(int a , int b){
return a + b;
}
在CMakeLists.txt中加入calcul.cpp

image.png
在native-lib.cpp中调用add方法

image.png
在MainActivity中调用

image.png
以上是c代码例子编写 , 下面生成.a静态库供别人使用
打开CMakeLists.txt文件,将add_library下的SAHRED改为STATIC,将native-lib.cpp删掉 ,将MainActivity中静态块删掉,以及native方法
image.png
image.png
直接运行或者编译一下都行,.a文件就会生成了,别人引用就能直接使用里面的方法

image.png
















以上是关于Android studio .a静态库的生成与调用的主要内容,如果未能解决你的问题,请参考以下文章

带有静态库的 Android Studio 中的本机 C++ 代码

怎么改变android studio中库的aar文件的输出目录

.a静态库的制作及使用

Android Studio 3.0.1不会构建NDK静态库

android studio 怎么生成密钥库

Android NDK编译如何强制使用libc++.a的静态链接库