本节介绍如何使用Android Framework以及相关工具构建应用程序,并配合实际例子(记事本)来带领你逐步学习如何创建工程、开发应用逻辑和用户界面、编译并执行程序。同时给出练习程序——记事本来介绍开发过。你可以跟随每个练习有步骤地进行训练,并逐步完善应用程序。练习将对步骤的每个细节进行阐述,同时给出完成应用程序所必需的所有示例代码。
完成训练后,你会发现你已经创建了一个可以运行良好的Android应用程序,并对Android开发中最重要的概念有了深刻的理解。如果想要给这个记事本应用程序添加更为复杂的特性,你可以尝试向其中添加其他的代码。
读者范围
首先, 这个指南是为有开发经验的读者准备的,尤其是有过java语言开发经验的读者。如果你之前没有做过Java开发也不要紧,只是练习过程会相对慢一点。
其次,本指南是建立在Install SDK 和 Hello Android文档基础之上的,上两篇文档教给你如何安装开发环境以及如何编译Android应用程序。在开始训练之前,请确认已经按照文档的说明下载并安装了SDK。
最后,本指南介绍的是在安装了ADT插件的Eclipse开发环境下的记事本应用程序的开发过程。如果没有Eclipse,你也能够跟随练习创建应用程序,但是Eclipse开发环境已经为你做好的步骤必须由你自己解决。如果想要给这个记事本应用程序添加更为复杂的特性,你可以尝试向其中添加其他的代码。
在继续本指南之前,我们假设你已经了解了Android应用程序的基本概念和术语。如果你还没有熟悉它们的话,请参考 《Overview of an Android Application》 和 《Application Lifecycle》。
练习前的准备
请确保已经安装了SDK和Eclipse开发环境。当一切准备就绪,请到SDK安装目录下找到练习包并将其解压缩。包中含有我们下面用到的eclipse练习工程文件。你可以用这些工程文件替换你自己的工程。
想要得到练习工程文件,请按下面操作:
1.下载文件:http://code.google.com/android/intro/codelab/NotepadCodeLab.zip
2.解压缩
3.打开NotepadCodeLab目录
在NotepadCodeLab目录中包括6个工程: Notepadv1, Notepadv2, Notepadv3, Notepadv1Solution, Notepadv2Solution 和 Notepadv3Solution。 Notepadv*工程是每个练习的起点,而Notepadv*Solution工程是对应练习的解决方法。如果你在某个练习的细节处遇到困难,请参考对应练习的解决方法。
练习开始
下表列出了每个练习和它所用到的知识点。在开始一个练习之前我们都假设你已经完成了前一项练习。
练习1
|
创建一个简单的便签列表,此列表提供给用户添加新的便签的功能,但暂时还不能修改它们。本例示范了
ListActivities
的基本功能以及如何创建和处理菜单事件,如何使用
SQLite
数据库存储便签。
|
练习2
|
给应用程序添加另一个行为(Activity)。本例示范了如何创建一个新的行为(Activity)并将它加入到
manifest
文件中,如何在不同的行为之间传递数据,如何应用界面布局方面的高级技巧。同时,也展示了如何利用
startSubActivity()
方法实现行为的异步调用。
|
练习3
|
给应用程序添加一个处理生命周期事件的方法,以使应用程序可以在自己的生命周期中保持运行。
|
额外练习
|
本例示范了如何使用Eclipse调试器,以及如何利用它来观察生命周期事件。这个范例不是必须的,但还是推荐大家练习。
|
其他的资源和深入的学习
想要了解更多的概念请参考 Common Android Tasks,本指南并不涵盖这部分内容。
在Android SDK中包含许多功能完整的示例代码应用程序,想要进一步学习可以参考。所有示例代码都在SDK安装目录下的samples目录中。
本指南中的练习来自SDK中一个完整的例子程序。当你下载了练习代码后,我们强烈建议你应该仔细看看SDK中的关于记事本的完整例子程序,对于你的应用程序来说它展示给你很多有趣的功能:
- 设置自定义便签列表
- 通过重载draw()方法,可以创建一个自定义文本编辑界面
- 为所有的便签实现一个具有完整功能的内容提供者(Content Provider)
- 恢复和丢弃编辑信息,而不是自动保存它们