Android:NDK编译

一.概述

使用NDK可以编译出静态(.a)、动态(.so)链接库和可执行文件

比在工程环境里写mk或者bp要方便很多

一段时间不用NDK编译容易忘记怎么使用,所以用一个小的 "Hello Ndk-Build!" Demo记录NDK编译的基本过程

二.什么是NDK?

NDK:Native Development Kit,Android的一种开发工具包(其实就是在安卓平台编写C和C++程序的开发包

作用:编译静态库、动态库和可执行文件

NDK环境配置

Windows环境就可以配置NDK,所以很方便

配置NDK开发环境有两种方式:

(1).AndroidStudio下载

如果电脑里安装了AndroidStudio,可以使用AndroidStudio自动下载NDK

下载之后配置环境变量:

(2).下载NDK

官方链接:NDK 下载  |  Android NDK  |  Android Developers

下载后解压,然后配置环境变量

三."Hello Ndk-Build"

(1).新建jni文件夹

   

不管有几层目录,也不管上级目录是什么名字

最终需要编译的代码一定要在名为"jni"的目录下

否则就会出现如下编译报错:

(2).配置Application.mk

(3)配置Android.mk

(4)hello-jni.c

五.编译、运行

(1)编译

在jni目录下打开cmd,执行ndk-build

可以看到arm和intel两个平台的so都被编译生成了

生成的文件在jni平级目录libs下面:

   

 

(2).执行打印“Hello Ndk-Build!”

如果要看到so运行效果打印“Hello Ndk-Build!”,需要把so集成到代码或开发环境中进行调用执行

我们可以不那么麻烦,把Android.mk改一改,改成编译可执行文件

编译生成的可执行文件hello-jni,push到设备里随便哪个目录,chmod 777修改权限后运行:

“Hello Ndk-Build!” 成功打印!

猜你喜欢

转载自blog.csdn.net/geyichongchujianghu/article/details/129794506