http://blog.csdn.net/onlymetagain/article/details/53191746
SDK是Software Development Kit的缩写,中文意思是“软件开发工具包”。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。SDK是一系列文件的组合,它为软件的开发提供一个平台(它为软件开发使用各种API提供便利)。
JDK(Java Development Kit,Java开发工具包)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Software development kit)。
可以认为jdk只是sdk的一种(子集),因为它是开发java程序的一个平台,开发其他程序的sdk可以没有jdk。
比如你下载了一个软件开发平台 eclipse-SDK-3.2.2-win32.zip,它本身里面是没有jdk的。
但是只要开发java程序就必须使用jdk(javaee和javase)。
我来打个比方吧:
SDK就像一台机床(它可以是多用途的),它可以生产ABC等工件;
当我们要生产A时,就给机床换上生产A的刀具a;
当我们要生产B时就换上生产B的刀具b;
当我们要生产C时就换上生产C的刀具c;
当我们要用机床(SDK)生产java程序时,我们就给机床换上刀具jdk,于是就把安装了jdk的SDK叫做java SDK.
JavaEE是专门为企业级应用提供的一个开发工具包,它里面已经包含了许多开发企业级应用所需要的“组件”,它为J2EE的开发提供了一个便利的开发平台,所以它就直接叫JavaEE SDK了。
不知道说明白了没有,都是些概念性的东西,其实你也可以理解jdk就是java SDK。
tools和build-tools包含了太多好用的工具,每个单独拿出来都可以介绍一大篇,建议题主先去官方文档了解一下,如果想深入的话,可以看看源码。比如adb的源码其实就蛮有意思的,已经有人把adb移植到Ubuntu,这样adb就可以识别任何你想识别的设备。
Platform(Google APIs),主要是提供你开发时候要使用的那个版本api。比如你开发中如果用到了5.0的api,那么你就要安装5.0的sdkGoogle APIS中包含了如google map 等一些android.jar中没有的东西。例如你想在android里做google map的应用,就需要引入google APIS了,打包了Google服务的Framework,比正常使用的android.jar里多了一些东西(比如 Google Play Service / Google map 之类的).
Platform-tools一般是提供一些特殊功能函数的头文件和库文件,可视为VC的加强工具包,也是VC的有利必要的补充。中文翻译就是:“平台开发工具包”,英文全称“(Windows) Platform Software Develope Kit”
sources for sdk就是SDK的源代码啊,在android-sdk/sources目录下,主要是ListView、View这些类的java文件啊。是模拟器的API Demo的源文件
document for android sdk安卓的接口文档,解释方法
android support repository主要是方便在gradle中使用android support libraries,因为Google并没有把这些库发布到maven center或者jcenter去,而是使用了Google自己的maven仓库。
support library就是提供suppport库给你用的,比如support v4,support v7。
google repository主要是给gradle使用的,方面添加比如Google Play Service的引用。这样gradle就可以使用google的maven仓库中的库了,而不需要去maven centee或者jcenter了。
根据官方文档的描述
SDK Tools 必须
SDK Platform-tools 必须
SDK Build-tools必须
SDK Platform必须至少安装一个版本
System Image建议安装
Android Support建议安装
SDK Samples建议安装
sdk tools:针对pc平台下使用的工具:比如模拟器,.9patch工具,性能追踪可视化工具traceview,
platform-tools:针对pc端和移动端进行交互的一些工具:比如adb工具(通过该工具pc端获取移动端log信息),sqlite3工具(通过该工具查询移动端数据库信息)
build-tools:aapt工具,aidl工具
aapt编译资源文件得到二进制xml和R.java
aidl工具将aidl文件--java interface
Android Studio 编译报错:
Error:The SDK Build Tools revision (23.0.1) is too low for project 'Client'. Minimum required is 25.0.0
gradle 插件对 SDK build Tools 和 Gradle的版本有要求 ,如果gradle 插件版本与SDK build Tools 版本不匹配则报错。
配置gradle:https://blog.csdn.net/su749520/article/details/78986933