Android程序员指南(3)
1.3 Android入门
Android,是运行在Linux2.6内核上、基于Java的操作系统。它的体积小巧但功能齐全。插图1-1是未经修改的
Android主屏幕。
?
?
图1-1 Android模拟器上的Android主屏幕
Android应用程序使用Java开发,并且很容易移植到这个新的平台。 如果你还没有下载Java或者不确定你需要哪个版本,我将在第二章中详细叙述开发环境的安装。Android的其他特性是包涵了3-D加速引擎(需要硬件支持),SQLLite提供的数据库支持,和一个完整的Web浏览器。
如果你熟悉Java编程或者是某种面向对象程序(OOP)的开发者,你可能做过在程序中开发用户界面(UI)——就是说UI的位置是在代码中处理的。Android, 在允许和懂得这种程序UI开发方式外,也支持更加新潮的,基于XML的用户界面布局。对于桌面开发者来说,XML界面布局是一个相当新的概念。我会在本书的“支持”一章中概括XML界面布局和程序UI开发两种方式。
Android的一个引人注目的特性在于它的架构。在这个系统中,第三方应用程序包括那些“自娱自乐”的程序,与那些和系统内核绑定程序一样,都是以同样的优先级运行。这是它与大多数系统的主要不同之处,在大多数系统中,嵌入式系统应用程序行比第三方程序的执行优先级要高很多。同时,Android的每个应用程序都使用一个轻量级虚拟机,运行在自己的线程里。
除了一些著名的SDK和格式良好的Lib库外,最令Android开发者激动的是可以访问操作系统的一切。如果你想创建一个要拨号的应用,你可以访问电话的拨号器(Dialer);如果你想创建使用内置GPS(如果配备)的应用,你也可以访问。开发者创建有活力、有趣的应用的潜在机会是相当开阔的。
所有的特性中,最棒的是Google已将它自己的一些有趣的产品。Android应用的开发者可以将他们的程序与Google的提供的东西如Google Map和无处不在的Google搜索连接起来,如果你打算写一个程序,在Google地图上标识出电话从哪里打来,或者在电话本中保存常用的搜索结果,Android已为你打开了希望之门。
第二章我们将开始Android开发之旅。您将学习到如何以及为何使用指定开发工具或集成开发环境(IDE),并且您将下载和安装Java IDE——EClipse。
Q&A
Q:Google与开放手机联盟有什么不同?
A:Google是开放手机联盟的一个成员。在购买了最初的Android开发者之后,以开放手机联盟的名义发布了这一系统。
Q:Android能运行Linux软件吗?
A:不一定。 虽然我可以相信有办法可以克服,但应用程序必须使用Android SDK编译才可以运行,主要的原因是Android应用程序的执行文件有特定的格式,这将在后面的章节中讨论。