概念认识
Android SDK:
Android Software Development Kit,android 软件开发工具包
JDK:
Java Development Kit,Java语言的软件开发工具包
NDK:
Native Development Kit,
(1).NDK是一系列工具的集合。帮助开发者快速开发C/C++的动态库。并能自动将so和Java应用一起打包成apk。这些工具对开发者的帮助是巨大的。
(2).NDK将是Android平台开发支持C开发的开端
优点:
(1).代码的保护。由于Java层代码很容易被反编译,而C/C++库反编译难度很大。
(2).可以方便的使用现存的开源库。大部分现存的开源库都是用C/C++代码编写的。
(3).提高程序的执行效率。将要求高性能的应用逻辑使用C开发,从而提高应用程序的执行效率。
(4).便于移植。用C/C++写的库可以方便的在其他的嵌入式平台上再次使用。
ANT:
是Apache的一个项目管理工具,是一个可将软件编译、测试、部署等步骤联系在一起加以自动化的工具,大多用于Java环境中的软件开发
EABI
ABI,application binary interface (ABI),应用程序二进制接口。EABI中的E,表示“Embedded”,即嵌入式应用二进制接口,是一种新的ABI
JNI
定义:Java Native Interface,即 Java本地接口
作用: 使得Java 与 本地其他类型语言(如C、C++)交互
Java如何实现跨平台
链接: link.
1、C++跨平台是一份源代码,在不同的平台上编译;
2、java跨平台是一份源代码,编译后生成中间字节码.class,然后通过不同平台的java虚拟机(jvm)来解释执行的。
C语言“一次编写,到处编译”,Java是“一次编译,到处运行”