【我的Android进阶之旅】如果通过NDK编程,使用JNI来调用已经封装完毕的无法修改的so库(第三方)

22 篇文章 7 订阅
本文详细介绍了如何在Android项目中通过NDK编程,使用JNI调用预先封装好的、不可修改的第三方so库。从创建头文件、C源码,到生成so库,再到Android项目中配置CMakeLists.txt、build.gradle,最终实现Java层调用C语言的算法。此外,还展示了如何添加和使用多个第三方so库。
摘要由CSDN通过智能技术生成

一、需求描述

在我的博客
【我的Android进阶之旅】如何通过JNI来封装已有的C源码算法,然后让Java层调用C语言写的算法https://ouyangpeng.blog.csdn.net/article/details/109299224

中有介绍,我通过写好Java类,然后生成JNI头文件,再让写算法的同事实现这个JNI头文件,再去调用他已经写好的算法。

但是有两个问题得考虑:

  1. 如果这个C程序员同事就是不配合你咋办?就丢一个已经写好算法的so库给你,其余的你自己去玩。
  2. 如果你是从其他地方看到一个不错的so文件,但是你没有源码,无法修改,你怎么调用他呢?

所以我们得想一想,如果已有的so库文件不会再重新修改源代码重新生成so库文件的情况下,我们如何调用这些so库文件呢?

下面我们通过一个案例来实现这个需求。

二、模拟C程序员生成指定不改变的so库

假如我们有一个算法,就是计算两个数的和并返回。下面是整个生成so库所需要的文件,
这几个文件我放在本地的D:\GitLab Source\

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

字节卷动

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值