第一次接触到AndroidSDK 是在安装Android Studio的时候,需要下载SDK,下载完之后会有一个SDK的目录文件夹,除此之外在我印象中就没有主动去使用过SDK了。

SDK全称Software Development Kit,是开发工具的集合,开发工具包含软件包,软件框架或者操作系统等等;我们自己也可以编译自己的SDK,我们所写的SDK是基于系统的SDK进行开发的、可以完成特点功能的工具集合,形式由jar、aar、so等,我使用过的百度地图的sdk或者酷我音乐的sdk都是这种形式的文件。

Android SDK 目录形式:

1. extras

该目录用于存放 Android 附加支持文件,主要包含 Android 的 support 支持包、Google 的几个工具和驱动、Intel 的 IntelHaxm。

2. platforms

该目录用于存放 Android SDK Platforms 平台相关文件,包括字体、res 资源、模板等。

3. platform-tools

该目录包含各个平台工具,其中主要包含以下几部分。

名称  作用 
api 目录 api-versions.xml 文件,用于指明所需类的属性、方法、接口等
 lib 目录 目录中只有 dx.jar 文件,为平台工具启动 dx.bat 时加载并使用 jar 包里的类
aapt.exe 把开发的应用打包成 APK 安装文件,如果用 Eclipse 开发,就不用通过命令窗口输入命令+参数实现打包
adb.exe (Android Debug Bridge 调试桥) 通过它连接 Android 手机(或模拟器)与 PC 端,可以在 PC 端上控制手机的操作。如果用 Eclipse 开发,一般情况 下 ADB 会自动启动,之后我们可以通过 DDMS 来调试 Android 程序 。  
aidl.exe (Android Interface Definition Language)    Android 内部进程通信接口的描述语言,用于生成可以在 Android 设备进行进程间通信 (Inter-Process Communication,IPC) 的代码   
dexdump.exe    可以反编译 .dex 文件,例如 .dex 文件里包含 3 个类,反编译后也会出现 3 个 .class 文件,通过这些文件可以大概了解原始的 Java 代码。
dx.bat    将 .class 字节码文件转成 Android 字节码 .dex 文件   
fastboot.exe    可以进行重启系统、重写内核、查看连接设备、写分区、清空分区等操作   
Android llvm-rs-cc.exe    Renderscript 采用 LLVM 低阶虚拟机,llvm-rs-cc.exe 的主要作用是对 Renderscript 的处理   
NOTICE.txt 和 source.properties    NOTICE.txt 只是给出一些提示的信息;source.properties 是资源属性信息文件,主要显示该资源生成时间、系统类型、资源 URL 地址等。   

4. samples

samples 是 Android SDK 自带的默认示例工程。

5. system-images

该目录存放系统图片。

6. temp

该目录存放系统中的临时文件。

7. tools

作为 SDK 根目录下的 tools 文件夹,这里包含重要的工具,比如 ddms 用于启动 Android 调试工具,如 logcat、屏幕截图和文件管理器;而 draw9patch 则是绘制 Android 平台的可缩放 PNG 图片的工具;sqlite3 可以在 PC 上操作 SQLite 数据库;而 monkeyrunner 则是一个不错的压力测试应用,模拟用户随机按钮;mksdcard 是模拟器 SD 映像的创建工具;emulator 是 Android 模拟器主程序,不过从 Android 1.5 开始,需要输入合适的参数才能启动模拟器;traceview 是 Android 平台上重要的调试工具。

Android.jar

作为一个 Java 项目,通常情况下都会引入要用到的工具类,也就是 JAR 包。

在 Android 开发中,绝大部分开发用的工具包都被封装到一个名叫 Android.jar 的文件里了。在 Eclipse 中展开来看,可以看到 J2SE 中的包、Apache 项目中的包,还有 Android 自身的包文件。Android 的包文件主要包括以下内容:

名称  作用 
  Android.app   提供高层的程序模型和基本的运行环境
  Android.content   包含各种对设备上的数据进行访问和发布的类
  Android.database   通过内容提供者浏览和操作数据库
  Android.graphics   底层的图形库
  Android.location   定位和相关服务的类
  Android.media   提供一些类管理多种音频、视频的媒体接口
  Android.net   提供帮助网络访问的类,超过通常的 java.net.* 接口
  Android.os   提供系统服务、消息传输、IPC 机制
  Android.openg   提供 OpenGL 的工具
  Android.provider   提供类,访问 Android 的内容提供者
  Android.telephony   提供与拨打电话相关的 API 交互
  Android.view   提供基础的用户界面接口框架
  Android.util   涉及工具性的方法,例如时间日期的操作
  Android.webkit   默认浏览器操作接口
  Android.widget   包含各种 UI 元素(大部分是可见的)在应用程序的屏幕中使用

Android API 扩展包

核心的 Android API 在每部手机上都可以使用,但仍然有一些 API 接口有各自特别的适用范围,这就是所谓的“可选API”。这些 API 之所以是“可选的”,主要是因为一个手持设备并不一定要完全支持这类 API,甚至可以完全不支持。

1. Location-Based Services(定位服务)

Android 操作系统支持 GPS API-LBS,可以通过集成 GPS 芯片来接收卫星信号,通过 GPS 全球定位系统中至少 3 颗卫星和原子钟来获取当前手机的坐标数据,通过转换就可以成为地图上的具体位置,这一误差在手机上可以缩小到 10 米。在谷歌开发手机联盟中可以看到著名的 SiRF star。所以未来 gPhone 手机上市时集成 GPS 后的价格不会很贵。

同时,谷歌正在研制基于基站式的定位技术——MyLocation,可以更快速地定位,与前者 GPS 定位需要花费大约 1 分钟相比,基站定位更快。

2.  Media APIs(多媒体接口)

Android 平台上集成了很多影音解码器以及相关的多媒体 API,通过这些可选 API,厂商可以让手机支持 MP3、MP4、高清晰视频播放处理等。

3.  3D Graphics with OpenGL(3D 图形处理 OpenGL)

可选 API。Android 平台上的游戏娱乐功能,如支持 3D 游戏或应用场景就需要用到 3D 技术,手机生产厂商根据手机的屏幕以及定位集成不同等级的 3D 加速图形芯片来加强 gPhone 手机的娱乐性,有来自高通的消息称,最新的显示芯片在 gPhone 上将会轻松超过索尼 PS3。

4) Low-Level Hardware Access(低级硬件访问)

这个功能主要用于控制手机的底层方面操作,设计底层硬件操作将主要由各个手机硬件生产厂商来定制,支持不同设备的操作管理,如蓝牙 (Bluetooth) 以及 WIFI 无线网络支持等。

Android SDK解析相关推荐

  1. 《ArcGIS Runtime SDK for Android开发笔记》——(6)、基于Android Studio的ArcGIS Android工程结构解析...

    1.前言 Android Studio 是第一个Google官方的 Android 开发环境.其他工具,例如 Eclipse,在 Android Studio 发布之前已经有了大规模的使用.为了帮助开 ...

  2. Android SDK实例之Snake游戏深入解析(一)

    Snake是Android SDK例子程序中的一个小游戏,工程源代码:android-sdk-windows-1.5_r2\platforms\android-1.1\samples\Snake.这个 ...

  3. Unity3d Android SDK接入解析(四)通用的Android SDK接入中间件

    一.前言 接入Android SDK正式告一段落,在这段时间里面,依次接入了华为.应用宝.小米.360等等大大小小十来个SDK,也算对Unity接入渠道SDK有了较为全面的理解,对各个渠道的坑也算深有 ...

  4. Unity3d Android SDK接入解析(三)接入Android Library的理解(爱贝云支付为例)

    一.前言 写这个主题的原因,出于刚入门u3d,需要接入爱贝云支付的内容,苦于爱贝支付是一个Android的Library库,看到网上漫天遍野都是Android接入的帖子,但却没有我想要的关于Libra ...

  5. Android混淆解析

    此文章转载来源https://www.jianshu.com/p/84114b7feb38点击打开链接 Android混淆解析 一.混淆的目的 一款发布到市场的软件原则上都应该做代码混淆. 通过代码混 ...

  6. 怎么看android sdk 文档

    1.我建议大家要养成一个习惯,以后遇到疑问时,首先应该想到去sdk文档上查找,然后再去百度上google:这样做一来可以锻炼自己理解E文的能力,二来也会让自己的印象更深刻些 1号区域:标签栏,各个标签 ...

  7. OpenCV android sdk配置OpenCV android NDK开发实例

    OpenCV android sdk配置OpenCV android NDK开发实例 [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/det ...

  8. android sdk build-tools_从零开始仿写一个抖音App——视频编辑SDK开发(一)

    本文首发于微信公众号--世界上有意思的事,搬运转载请注明出处,否则将追究版权责任.交流qq群:859640274. 大家好久不见,又有一个多月没有发文章了.不知道还有哪些读者记得我的 从零开始仿写抖音 ...

  9. Android SDK Manager更新不了的解决办法

    android SDK Manager更新不了,出现错误提示:"Failed to fetch URL..."! 可以用以下办法解决: 使用SDK Manager更新时出现问题 F ...

最新文章

  1. java对象转xml 高性能_通过实例学习JAVA对象转成XML输出
  2. 生出树状的文件夹结构
  3. Linux查看文件编码格式及文件编码转换
  4. CSS 小结笔记之滑动门技术
  5. el-table表格格式化某一列数据;统一处理el-table表格某一列数据
  6. 城市公交网建设问题(信息学奥赛一本通-T1348)
  7. 比亚迪汉鸿蒙系统测评_国产强强联合,比亚迪与华为联手打造的“汉”定制款华为P40亮相...
  8. Android中ListView的使用步骤
  9. 基于 KubeSphere 的分级管理实践
  10. MT【252】椭圆内接三角形内切圆半径
  11. Unity 3D课程总结
  12. HTML中<a></a>标签的四大功能 必看!必看!!必看!!!
  13. 数据结构教程 李春葆主编 (第5版)绪论笔记
  14. c语言数字字符一起读,如何同时输入字符串和数字
  15. 【UEFI实战】Intel开源固件项目
  16. Qt之简易的多功能小相册
  17. HTML实时获取当前时间
  18. 微立体岗位竞聘PPT模板
  19. 【OKT507】迪文屏事件
  20. Cisco ACE Web应用防火墙

热门文章

  1. 双目测距深度公式推理。
  2. 【Linux】下固定USB串口设备号(防止设备重复挂载、保证对外接设备信息稳定读取)
  3. CPU多核一定比单核性能强吗
  4. 基友记 SDUT 2189
  5. 学习分析技术文章笔记
  6. Maxcompute ODPS SQL 聚合函数
  7. oracle修改temp表空间大小,默认TEMP表空间变更,释放空间
  8. 一起来捉妖服务器维护时间,一起来捉妖2月21日终极测试 测试时间与玩法更新一览...
  9. 11-高性能JSON库——fastjson2
  10. 微服务架构02-nacos注册中心