1.5.9 增加so文件

优质
小牛编辑
130浏览
2023-12-01

JNI是什么?

Android系统的底层库是由c\/c++编写,上层Android应用程序和应用程序框架通过JNI(JavaNative Interface)调用底层接口.

Android使用JNI开发分两种情况:一是使用已经编译好的.so动态库;二是使用c\/c++源代码开发.

一些第三方的库出于性能或代码安全的目的,会将核心代码用C\/C++来实现,然后提供编译好的so文件或jar包给我们.

so文件是什么?

Android中用到的so文件是一个c++的函数库,apk或jar包中调用so文件时,需要将对应so文件打包进apk或jar包.

如何加载so文件?

假设你的so文件为:libBaiduMapSDK_v350_1.so

这样加载:

String libName = "BaiduMapSDK_v350_1"; \/\/ 注意:库名libName, 没有前缀lib和后缀.so

System.loadLibrary( libName ); \/\/在使用前一定要先加载

so文件应该放在哪里?

在Eclipse中我们将so文件放到libs目录下就可以了, 那么在AndroidStudio中应该将so文件放到哪里呢?

放到moduleName\/src\/main\/jniLibs目录下,如果没有jinLibs目录就新建一个.

armeabi、armeabi-v7a、mips、x86这四个文件夹是干嘛的呢?

表示四种不同的cpu类型,不同的cpu的特性不一样,在使用so文件时注意区分.

可以直接复制so文件粘贴到对应的文件夹下

ok之后so文件就进来啦.