Android studio 快速进行NDK开发,通过JNI技术实现java与c/c++的互相调用

一、简单介绍NDK和JNI

NDK的全称是Android Native Development Kit,它提供了一系列的工具,帮助开发者快速开发C/C++的动态库,生成so库,供java层调用。

JNI的全称是Java Native Interface,是java语言提供java与c/c++通信的一种机制,使得java与c/c++能够互相调用。

二、Android studio配置NDK路径

随便新建一个android项目,File》Project Structure

下载安装完成NDK后,local.properties文件可以看到SDK和NDK路径,如下图:

接着,gradle.properties文件增加一行:

三、增加生成.h头文件和ndk编译的快捷方式

1、创建生成.h头文件的快捷键,File》Settings》Tools》External Tools:

快捷键名称javah -jni,选中java文件,点击此快捷键就会生成对应的.h文件。

Program是JDK的javah.exe具体路径,$JDKPath$\bin\javah.exe。

Arguments是javah 编译后.h文件的保存位置,-classpath . -jni -d $ModuleFileDir$/src/main/jni/ $FileClass$。

Working directory是java源文件的文件夹路径,$ModuleFileDir$\src\main\java

2、生成ndk编译快捷键 File》Settings》Tools》External Tools:

ndk-build命令是将c/c++文件编译生成so库文件。

Program是ndk编译的命令文件,D:\study_soft\android-sdk\ndk-bundle\ndk-build.cmd。

Working directory:$ModuleFileDir$\src\main\

3、快捷键生成后,该怎么去使用呢?

要根据java文件生成.h,选中java文件》右击》External Tools》javah -jni

编译完成后会生成一个cpp(以前的studio版本可能会是jni)文件夹,此文件夹下.h文件就是我们要的,

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值