Android Studio 一个简单的非传统Jni例子

Jni是Java运行、调用C和C++代码的一个中间件,可以理解为是一个转接头。

我的C/C++水平仅限于大学时候的课程的算法例子,还真没拿来写过东西。

首先在Android Studio中安装NDK环境和CMake(让C/C++语言也能自动提示)

172357_bVqd_1462828.png

然后创建一个项目,记得把include C++ support勾上

172446_QHuQ_1462828.png

创建之后,会发现目录上多了cpp目录,和CMakeLists.txt文件(如果你以前弄过jni开发,可以发现不同,以前的jni目录变成了cpp,CMakeLists.txt的作用大概就是替代Android.mk这个文件的作用,传统jni和当前jni的区别,下面就不在复述了)

172803_pavB_1462828.png

然后直接运行项目,页面中间就会打印出来“hello from C++” 的字样了

然后我们再编写一个简单的例子,输入两个整数,输出最大的那个:

首先Java端的代码:

175908_YNyj_1462828.png

然后Jni端的代码:

175930_AszW_1462828.png

直接运行就能得出结果

180010_q0qH_1462828.png

如果只是简单的jni的hello world程序,基本上就是这样了!

题外话:用CMake来打包的话,比原来的jni方便快捷很多,原本的jni开发,需要创建native描述的方法,然后再生成.h文件,再然后创建.c文件,接着再编写android.mk文件,再接着使用terminal命令行生成so文件,最后引用so文件然后运行……麻烦得很

 

转载于:https://my.oschina.net/u/1462828/blog/1552937

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值