Android SDK的初步研究
2010年09月27日
1.SDK 首先说说SDK,它指软件开发工具包(Software Development Kit)一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合。既然是工具包,一般情况下包括一些运行环境库,技术文档,示例代码,调试和运行工具等。总之,整个SDK的目的是为了方便程序员进行一系列的学习于开发。
2.Android SDK(2.2 Platform)
Android SDK默认情况下是包含tools的文件夹的,其他的组件是需要通过Android SDK and AVD Manager来安装的。
我们安装上最新版本的tools,doc,platform2.2,samples和google apis。这样在SDK的目录下就增加了add-ons,docs,platforms,samples,temp等目录。
(1)add-ons目录为插件,刚刚安装的addon_google_apis_google_inc_8插件就在这个目录下。如果想添加其他的插件,可以在Android SDK and AVD Manager中输入新的网站地址,然后安装插件,原理和eclipse安装插件极为相似
(2)docs目录为文档,打开index.html即可通过浏览器查看所有的文档。
(3)platforms为平台的组件,包含所有关于平台的东西,每一个平台在这个目录下是一个单独的目录。
(4)samples为示例代码,每一个平台的示例代码是一个单独的目录。
(5)temp为一个临时文件夹。
(6)tools目录下包含了一系列的工具,包括一系列的工具。
3. add-on中的Google API
Google API 插件是 Android SDK 开发环境的扩展,通过该插件,您的 Android 应用程序可以轻松地访问 Google 服务和数据。该插件的核心功能是地图外部库,您可以通过其将功能强大的地图功能添加到 Android 应用程序中。
要使用该插件,请将其安装在 Android SDK 中。在 Android SDK 中,您可以访问地图库的类并针对这些类编译应用程序。该插件还包含了在 Android 模拟器中运行的兼容的 Android 系统映像,这使您可以在向用户发布应用程序之前对应用程序进行调试、分析和测试。当您准备发布应用程序时,可以将其部署到任何运行兼容版本的 Android 平台并且也包含地图外部库的支持 Android 的设备上。
Google API 插件包括: 面向 Android 2.2 的地图外部库(API 级别 8)
完全兼容的 Android 2.2 系统映像(内置地图库)
称为 MapsDemo 的示例 Android 应用程序
完整的类文档
具体参见http://code.google.com/intl/zh-CN/android/add-ons/ google-apis/
4.platform的版本
现在的版本是Android 2.2 Platform,是2010年5月更新的。它的api level是8。以下是Android Platform版本和Api level的一个对应关系。
Android 2.2---8
Android 2.1---7
Android 2.0.1---6
Android 2.0---5
Android 1.6---4
Android 1.5---3
Android 1.1---2
Android 1.0---1
这里的Android Platform 翻译成中文是固件的意思,主要是包含android 这个嵌入式操作系统的镜像。当然它还包括其他一些工具和数据之类的东西。而api level是系统留给开发人员的接口的版本号。这里platform 版本号和api level 的关系就好像是wince OS design的image和windows api之间的关系。
5.Android 2.2 Platform
(1)系统的镜像中包含如下的默认组件: 这些组件是手机操作系统中固有的一些组件,它们为手机用户提供最基本的服务。
(2)系统中默认有如下的默认本地化语言 Chinese, PRC (zh_CN)
Chinese, Taiwan (zh_TW)
Czech (cs_CZ)
Dutch, Netherlands (nl_NL)
Dutch, Belgium (nl_BE)
English, US (en_US)
English, Britain (en_GB)
English, Canada (en_CA)
English, Australia (en_AU)
English, New Zealand (en_NZ)
English, Singapore(en_SG)
French, France (fr_FR)
French, Belgium (fr_BE)
French, Canada (fr_CA)
French, Switzerland (fr_CH)
German, Germany (de_DE)
German, Austria (de_AT)
German, Switzerland (de_CH)
German, Liechtenstein (de_LI)
Italian, Italy (it_IT)
Italian, Switzerland (it_CH)
Japanese (ja_JP)
Korean (ko_KR)
Polish (pl_PL)
Russian (ru_RU)
Spanish (es_ES)
在手机中可定制以上语言中的一种作为手机语言。 Android SDK包含了各种各样的定制工具,简介如下:
Android模拟器(Android Emulator )
它是在你的计算机上运行的一个虚拟移动设备。你可以使用模拟器来在一个实际的Android运行环境下设计,调试和测试你的应用程序。
Android调试桥(Android Debug Bridge (adb) )
Adb 工具可以让你在模拟器或设备上安装应用程序的.apk文件,并从命令行访问模拟器或设备。你也可以用它把Android模拟器或设备上的应用程序代码和一个标准的调试器连接在一起。
层级观察器 (Hierarchy Viewer )
层级观察器工具允许你调试和优化你的用户界面。它用可视的方法把你的视图(view)的布局层次展现出来,此外还给当前界面提供了一个具有像素栅格(grid)的放大镜观察器,这样你就可以正确地布局了。
9-patch
Draw 9-patch工具允许你使用所见即所得(WYSIWYG)的编辑器轻松地创建NinePatch图形。它也可以预览经过拉伸的图像,高亮显示内容区域。
Eclipse IDE Android 开发工具插件(Android Development Tools Plugin for the Eclipse IDE)
ADT插件大大扩展了Eclipse集成环境功能,使得生成和调试你的Android应用程序既容易又迅速。如果你使用Eclipse,ADT插件可以让你难以置信地加快开发Android应用程序的 速度。
你可以从Eclipse IDE内部访问其它Android开发工具。例如,ADT可以让你直接从Eclipse访问DDMS工具的很多功能-屏幕截图,管理端口转发(port-forwarding),设置断点,观察线程和进程信息。
它提供了一个新的项目向导(New Project Wizard),帮助你快速生成和建立起新Android应用程序所需的最基本的文件。
它使得构建Android应用程序的过程变得自动化以及简单易行。
它提供了一个android代码编辑器,可以帮助你为Android manifest和资源文件编写有效的XML。
有关ADT插件的更多详细信息,包括安装指令,可参考Android 开发环境安装。如果你想看一个用法范例的屏幕截图,可参考Hello Android。
Dalvik 调试监视器服务(Dalvik Debug Monitor Service (ddms))
这个工具集成了Dalvik(为Android 平台定制的虚拟机(VM)),能够让你在模拟器或者设备上管理进程并协助调试。你可以使用它杀死进程,选择某个特定的进程来调试,产生跟踪数据,观察堆(heap)和线程信息,截取模拟器或设备的屏幕画面,还有更多的功能。
Android Asset Packaging Tool (aapt)
Aapt工具可以让你创建包含Android应用程序二进制文件和资源文件的.apk文件。
Android接口描述语言(Android Interface Description Language (aidl))
可以让你生成进程间的接口的代码,诸如service可能使用的接口。
sqlite3
这个工具能够让你方便地访问SQLite 数据文件。这些数据文件是由Android 应用程序创建并使用的。
Traceview
这个工具可以将你的Android 应用程序产生的跟踪日志(trace log)转换为图形化的分析视图。
mksdcard
帮助你创建磁盘映像(disk image),你可以在模拟器环境下使用磁盘映像来模拟外部存储卡(例如SD 卡)。
dx
Dx gongju 将.class字节码(bytecode)转换为Android字节码(保存在.dex文件中)。
UI/Application Exerciser Monkey
Monkey是在模拟器上或设备上运行的一个小程序,它能够产生为随机的用户事件流,例如点击(click),触摸(touch),挥手(gestures),还有一系列的系统级事件。你可以使用Monkey来给你正在开发的程序做随机的,但可重复的压力测试。
activitycreator
一个可以产生Ant build 文件的脚本,你可以使用它编译你的android 应用程序。如果你正在Eclipse上开发,并使用ADT插件,你不必使用这个脚本。