NDK入门详细教程

一、NDK下载
在这里插入图片描述
步骤:点击SDK Manger -> SDK Tools -> 勾选CMake和NDK -> 点击Apply->OK,NDK下载完成
NDK:这套工具集允许为 Android 使用 C 和 C++ 代码。
CMake:一款外部构建工具,可与 Gradle 搭配使用来构建原生库。如果只计划使用 ndk-build,可不勾选。

二、NDK配置
我们先创建一个项目,里面只有一个MainActivity
然后右键项目 -> Open Module Settings -> Android NDK Location ->选中下载的ndk目录(默认位于sdk下)-> OK -> 等待编译
在这里插入图片描述
编译完成,会发现根目录local.properties里面多了NDK路径如下图:
在这里插入图片描述
接着在根目录gradle.properties下面加上如下配置:
android.useDeprecatedNdk=true
在这里插入图片描述
此时编译报了如下错:
在这里插入图片描述
是由于我使用的studio版本是3.2.1

此处须注意:
#gradle:3.0.1 studio3.0 之前用 android.useDeprecatedNdk=true
#gradle:3.0.1 studio3.0 之后用 android.deprecatedNdkCompileLease=1556013764657

所以,根据错误提示,将gradle.properties改为如下:
在这里插入图片描述
报错解决。
继续我们在module下面的build.gradle下面加上ndk节点如下图:

ndk {
              moduleName "JNISample" //编译出so的名字
        }

在这里插入图片描述
三、NDK开发
三部曲:
(一)新建Java文件编写相关代码
创建一个JNIUtil的类,编写一个native方法如下图:
在这里插入图片描述
(二).通过命令工具Terminal生成.h文件
打开Android studio 最下面的命令工具Terminal(也可通过cmd直接打开命令行)
1.进入java目录下,默认为项目根目录,执行以下命令
javah sz.com.myjni.JNIUtil
在这里插入图片描述
2.执行成功,会在java目录下生成.h头文件,如下图:
在这里插入图片描述

(三)新建.c 或者.cpp文件编写相关代码
1、main下面新建jni文件夹
在这里插入图片描述
2、将.h文件拷贝到生成的jni目录下
在这里插入图片描述
生成的.h内容如下:
在这里插入图片描述
3、把.h类纯复制一份,把后缀名改成.cpp。里面实现它的方法,我们在方法里面打印"JNI Test!"
在这里插入图片描述
最后,在MainActivity中执行:
在这里插入图片描述
运行程序:
在这里插入图片描述
并且成功编译出了.so文件,如下图:
在这里插入图片描述
大功告成!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值