zoukankan      html  css  js  c++  java
  • Android NDK R9 安装配置 无需Cygwin

    转自:http://www.cr173.com/soft/66623.html

    NDK是一个工具集,可让您实现您的应用程序使用本机代码的语言,如C和C + +。Android NDK 是在SDK前面又加上了“原生”二字,即Native Development Kit,因此又被Google称为“NDK”。

    在此之前,Android平台的第三方应用程序均是依靠基于Java的Dalvik特制虚拟机进行开发的。原生SDK的公布可以让开发者更加直接的接触Android系统资源,并使用传统的C或C++语言编写程序,并在程序封包文件(.apks)中直接嵌入原生库文件。

    NDK的公布可以让开发者更加直接的接触Android系统资源,并使用传统的C或C++语言编写程序,并在程序封包文件(.apks)中直接嵌入原生库文件。NDK的公布让原来从事C语言开发者也参与到Android平台,也让java开发者方便的调用底层操作,特别是游戏开者,对引擎,速度等要求较高者,有了新的工具来实现所需功能,做出更加完美的程序。

    对于某些类型的应用程序,这可以是有益的,所以你可以重用现有的代码库,这些语言编写的,但大多数应用程序不需要的Andr​​oid NDK。

    Android NDK R9更新:

    Android NDK R9 主要是为了Android 4.3开发准备的。随着Android 4.3平台的发布,谷歌还发布了Android NDK (r9)的更新版本。新的NDK允许你本地访问Android 4.3中的OpenGL ES 3.0 API以及其他稳定的API。如果你在游戏或应用中使用了高性能图形功能,可以采用该版本。 

    Android NDK 是什么?

    Android NDK全称:Native Development Kit,即本地开发包。

    1、NDK是一系列工具的集合。

    NDK提供了一系列的工具,这些工具对开发者的帮助是巨大的。它们能帮助开发者快速开发C(或C++)的动态库,并能自动将so库和java应用一起打包成apk。

    NDK集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so库。NDK可以自动地将so和Java应用一起打包,极大地减轻了开发人员的打包工作。

    2、NDK提供了一份稳定、功能有限的API头文件声明。Google明确声明该API是稳定的,在后续所有版本中都稳定支持当前发布的API。从该版本的NDK中看出,这些API支持的功能非常有限,包含有:C标准库(libc)、标准数学库(libm)、压缩库(libz)、Log库(liblog)。

    Android NDK安装教程:

    对于Windows环境下NDK的开发,如果使用的NDK是r7之前的版本,必须要安装Cygwin才能使用NDK;从r7开始,Google的提供了一个ndk-build.cmd的脚本,可以直接用它编译,而不需要使用Cygwin了。可以通过,配置path变量,直接在cmd下面运行ndk-build命令即可对android工程中的项目进行编译了。

    1、配置path

    2、推荐在eclipse中安装一个插件 可以快速调出文件夹,即命令行

    详见http://basti1302.github.io/startexplorer/

    初步的使用:

    1、导入项目

    在工程的根目录下面 输入ndk-build

    运行整个项目即可,看到项目运行成功的画面。

    在这种情况下,就可以编写一般的代码的程序啦!但是,这样写的C代码是没有代码的提示。点击在你的工程Project选择Android Tools,Adding Native Support 便可导入一些C的头文件库。如下图

    我们可以看到有很多的头文件哈!

    在这种模式下,

    1、写的代码就可以有C的代码的自动的提示哈!很OK的!

    2、自己编译项目JNI 下面的文件也自动的编译。

    3、但是如果,有些头文件不在导入的头文件中,项目将会报错..

  • 相关阅读:
    课上练习,判断大小。
    软件工程个人作业03。
    构建之法阅读笔记一。
    软件工程个人作业02。
    SSM常见面试题
    Bean的作用域和初始化时机(singleton&prototype)
    Spring中的AOP
    Spring核心概念和打印机案例
    MyBatis中的常用注解
    MyBatis中的延迟加载策略
  • 原文地址:https://www.cnblogs.com/duanweishi/p/4465806.html
Copyright © 2011-2022 走看看