android aar二次封装,使用aar库封装c++动态库并在Android app中使用

本文详细介绍了如何将纯C++动态库(.so)封装为符合JNI规范的SO库,并进一步封装成Android AAR包,以便在Android应用中使用。通过创建新的Android Studio项目和AAR模块,配置NDK,生成JNI接口,实现C++源文件,最后在Android应用中导入并使用封装后的AAR包。
摘要由CSDN通过智能技术生成

我们要使用某服务的SDK,但是对方只有纯c++风格的第三方的arm架构的动态库(.so),因此无法直接在java app中直接使用,需要将原始so库封装成符合JNI命名规范的so库(以下简称JNI so库),然后才能通过JNI在java app中使用。我的需求并非直接在Android app中使用JNI so库,而是再把JNI so库封装一层,封装成Android app能直接使用的jar包或aar包,其实就是做成Android SDK发布。所以实质是将c++的SDK封装为Android SDK。

环境搭建

安装jdk

安装Android studio

下载SDK、NDK

(添加环境变量)

新建AS项目和AAR Moudle

a. File -> New -> New Project, 选择add no activity,命名为 JNITest

b. local.properties中添加ndk路径,如ndk.dir=D:\android-ndk-r16-beta1

c. gradle.properties中添加 android.useDeprecatedNdk=true

d. File -> New -> New Moudle -> Android Library 命名为ALibrary

在AAR Moudel中生成JNI so库和aar包

a. 在ALibrary的build.gradle的android.defaultConfig中添加 ndk {

moduleName "clib"

stl "stlport_static"

ldLibs "log", "

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值