Android OS 的基本框架为Linux-Java ,在介绍Android开发时用到的Android结构图:
android 体系底层为Linux内核,之上提供一些C/C++函数库,因此Android 应用开发也可以使用C /C++开发,这就是Android NDK开发包,但Android提供NDK开发包的主要目的并不是推荐开发人员使用C(Native 代码)来编写一般的Android应用,而是要使用Java代码来编写Android应用来更好的处理Android应用生命周期(Life-cycle)相关的事件以避免出现“应用程序不响应(ANR)”的对话框。
使用NDK主要是通过JNI 使用从Java代码调用C代码,也就是使用Native编程主要是为上层Java代码提供库函数(动态库或是静态库的形式)而不是全部使用Native C代码编写整个Android应用(尽管借助于少量Java代码也是可以大部分使用C代码来实现的)。使用NDK大部分情况是需要将一些已有的C函数库移植到Android平台的所选择的快捷方法,而不是作为提高代码效率的手段。
安装Android NDK的方法非常简单:打开网页http://developer.android.com/sdk/ndk/index.html
选择合适的NDK开发包,下载解压即可。注:安装NDK之前需先安装SDK开发包,参见Android简明开发教程二:安装开发环境。
Android NDK 的前两级目录如下:
.
├── build
│ ├── awk
│ ├── core
│ ├── gmsl
│ └── tools
├── docs
│ ├── ANDROID-ATOMICS.html
│ ├── ANDROID-MK.html
│ ├── APPLICATION-MK.html
│ ├── CHANGES.html
│ ├── CPLUSPLUS-SUPPORT.html
│ ├── CPU-ARCH-ABIS.html
│ ├── CPU-ARM-NEON.html
│ ├── CPU-FEATURES.html
│ ├── CPU-X86.html
│ ├── DEVELOPMENT.html
│ ├── HOWTO.html
│ ├── IMPORT-MODULE.html
│ ├── INSTALL.html
│ ├── LICENSES.html
│ ├── NATIVE-ACTIVITY.HTML
│ ├── NDK-BUILD.html
│ ├── NDK-GDB.html
│ ├── NDK-STACK.html
│ ├── openmaxal
│ ├── opensles
│ ├── OVERVIEW.html
│ ├── PREBUILTS.html
│ ├── sidenav.html
│ ├── STABLE-APIS.html
│ ├── STANDALONE-TOOLCHAIN.html
│ ├── system
│ └── SYSTEM-ISSUES.html
├── documentation.html
├── GNUmakefile
├── ndk-build
├── ndk-build.cmd
├── ndk-gdb
├── ndk-stack
├── ndk.txt
├── platforms
│ ├── android-14
│ ├── android-3
│ ├── android-4
│ ├── android-5
│ ├── android-8
│ └── android-9
├── prebuilt
│ └── linux-x86
├── README.TXT
├── RELEASE.TXT
├── samples
│ ├── bitmap-plasma
│ ├── hello-gl2
│ ├── hello-jni
│ ├── hello-neon
│ ├── module-exports
│ ├── native-activity
│ ├── native-audio
│ ├── native-media
│ ├── native-plasma
│ ├── san-angeles
│ ├── test-libstdc++
│ └── two-libs
├── sources
│ ├── android
│ ├── cpufeatures
│ └── cxx-stl
├── tests
│ ├── awk
│ ├── build
│ ├── device
│ ├── README
│ ├── run-standalone-tests.sh
│ ├── run-tests.sh
│ └── standalone
└── toolchains
├── arm-linux-androideabi-4.4.3
└── x86-4.4.3
在开发NDK之前,建议先看一下doc 子目录下的文档,后面的博客也会有所介绍。
分享到:
相关推荐
Android NDK 开发教程 三 Hello JNI 示例
Android NDK 开发教程 二 概述
《Android NDK 开发教程 - v1.0》
英语:native development kit,简称NDK)是一种基于原生程序接口的软件开发工具。通过此工具开发的程序直接以本地语言运行,而非虚拟机。因此只有java等基于虚拟机运行的语言的程序才会有原生开发工具包。
android ndk视频教程 传智播客内部培训视频 环境搭建 调试 非常详细
ubuntu Android NDK开发环境的搭建
Android NDK 开发教程及JNI教程c语言开发介绍
全面介绍AndroidNDK 开发,包括NDK介绍,JNI调用等内容
详细介绍了在eclipse中android项目下c/c++代码的自动编译,和在eclipse中用ant生成ndk需要的jni头文件,加速ndk的开发,因为是原创,费了不少心力和时间,所以设了6分,有人反映太贵了,现在调成3分,这下大家满意了...
该资源教程,是在eclipse下实现的androidndk开发的文档,简单易懂,手把手教程!
Android NDK基础知识,看完一定会对NDK开发有很大的收获!
Android NDK R9环境配置 开发教程 NDKhi工程源码)
AndroidStudio NDK开发最佳入门实践 网上一些介绍AndroidStudio NDK入门的教程,感觉都不是很完整和全面,也没有告诉初学AndroidStudio NDK的同学们一些需要注意的地方。 本文所介绍的是在AndroidStudio上搭建最佳...
掌握 Android NDK构建系统 - 第1部分:使用ndk-build的技术 本文不是“Hello world!” - NDK的类型教程。虽然我仍然会快速介绍ndk-build的基本知识,但它不是本文的重点。相反,我将总结一些非常有用的NDK技术和我...
通过查看海量的网络资源,亲自整合,整理出了一套完备的Java开发环境配置、Android开发环境配置、Android NDK开发环境配置的全面教程。其中NDK的开发通过环境配置,再也不用进行单个文件的建立以及命令行javah进行...
android ndk开发实例,非常好的了解ndk的教程,不用java代码写出activity
NDK开发,适合Android开发入门教程,视频教程,快速上手
Android、NDK、开发教程 一 安装NDK
安卓app开发之NDK入门教程,JAVA代码通过JNI接口调用NDK代码(C语言编写的linux android功能).zip