多个cpp文件生成so_Android studio如何利用Android.mk编译生成多个so文件

我们这次不用gradle 去生成SO文件,改用Android.mk 去编译。

一共分为2步:

1.在Java中编写要调用的静态方法和需要加载的库,并生成头文件。

2.配置gradle

3.配置Android.mk文件和application.mk文件

下面一步步的走:

首先需要在Java类中声明要调用的方法,以及要加载的库,我们在包下新建一个jniUtil类,如下所示

public class jniUtil {

//要加载的库,生成的库格式为:lib+库名.so

static{ System.loadLibrary("hello-jni"); }

//要调用的本地方法,在c文件中该方法名称格式为:java_包名_类名_方法名

public static native String stringFromJNI();

}

注意:在编译时该类中不能有汉字,包括注释,否则会出现编码GBK的不可映射字符错误。

接下来就是利用external Tools生成头文件.h,这里可参考点击打开链接

然后就会在main目录下生成Jni文件夹,并且包含.h文件。下面就是编写C文件,或者可以拷贝已经写好的C文件放置在该jni文件夹中.

2.配置gradle

我们这里不用gradle 去编译,而是只让他去加载已经生成的so库,改用android.mk 去编译(稍后配置android.mk)

在app的build.gradle 下的android 标签下添加:

sourceSets {

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值