转自:http://www.cr173.com/soft/66623.htmlhtml
NDK是一个工具集,可以让您实现您的应用程序使用本机代码的语言,如C和C + +。Android NDK 是在SDK前面又加上了“原生”二字,即Native Development Kit,所以又被Google称为“NDK”。java
在此以前,Android平台的第三方应用程序均是依靠基于Java的Dalvik特制虚拟机进行开发的。原生SDK的公布可让开发者更加直接的接触Android系统资源,并使用传统的C或C++语言编写程序,并在程序封包文件(.apks)中直接嵌入原生库文件。android
NDK的公布可让开发者更加直接的接触Android系统资源,并使用传统的C或C++语言编写程序,并在程序封包文件(.apks)中直接嵌入原生库文件。NDK的公布让原来从事C语言开发者也参与到Android平台,也让java开发者方便的调用底层操做,特别是游戏开者,对引擎,速度等要求较高者,有了新的工具来实现所需功能,作出更加完美的程序。git
对于某些类型的应用程序,这能够是有益的,因此你能够重用现有的代码库,这些语言编写的,但大多数应用程序不须要的Andr​​oid NDK。github
Android NDK R9 主要是为了Android 4.3开发准备的。随着Android 4.3平台的发布,谷歌还发布了Android NDK (r9)的更新版本。新的NDK容许你本地访问Android 4.3中的OpenGL ES 3.0 API以及其余稳定的API。若是你在游戏或应用中使用了高性能图形功能,能够采用该版本。 eclipse
Android NDK全称:Native Development Kit,即本地开发包。工具
一、NDK是一系列工具的集合。性能
NDK提供了一系列的工具,这些工具对开发者的帮助是巨大的。它们能帮助开发者快速开发C(或C++)的动态库,并能自动将so库和java应用一块儿打包成apk。ui
NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差别,开发人员只须要简单修改mk文件(指出“哪些文件须要编译”、“编译特性要求”等),就能够建立出so库。NDK能够自动地将so和Java应用一块儿打包,极大地减轻了开发人员的打包工做。插件
二、NDK提供了一份稳定、功能有限的API头文件声明。Google明确声明该API是稳定的,在后续全部版本中都稳定支持当前发布的API。从该版本的NDK中看出,这些API支持的功能很是有限,包含有:C标准库(libc)、标准数学库(libm)、压缩库(libz)、Log库(liblog)。
对于Windows环境下NDK的开发,若是使用的NDK是r7以前的版本,必需要安装Cygwin才能使用NDK;从r7开始,Google的提供了一个ndk-build.cmd的脚本,能够直接用它编译,而不须要使用Cygwin了。能够经过,配置path变量,直接在cmd下面运行ndk-build命令便可对android工程中的项目进行编译了。
一、配置path
二、推荐在eclipse中安装一个插件 能够快速调出文件夹,即命令行
详见http://basti1302.github.io/startexplorer/
初步的使用:
一、导入项目
在工程的根目录下面 输入ndk-build
运行整个项目便可,看到项目运行成功的画面。
在这种状况下,就能够编写通常的代码的程序啦!可是,这样写的C代码是没有代码的提示。点击在你的工程Project选择Android Tools,Adding Native Support 即可导入一些C的头文件库。以下图
咱们能够看到有不少的头文件哈!
在这种模式下,
一、写的代码就能够有C的代码的自动的提示哈!很OK的!
二、本身编译项目JNI 下面的文件也自动的编译。
三、可是若是,有些头文件不在导入的头文件中,项目将会报错..