Android编程学习笔记之基本概念
学习Android编程时最重要的是弄清基本概念,我目前看的是《Beginning Android 3》电子书和Android文档(Dev Guide)。基本都是英文的,光看好像容易懂,但过几天又容易忘记。现在将基本概念写下来,也算是给自己加强记忆。这篇博客我会看一些、写一些,不断地更新。
Activities: 表现为拥有用户界面的一个屏幕(screen)。可以将activity想像成类似桌面应用程序中的窗口或对话框,或者普通web应用程序中的一个页面(page)。Android被设计成可以提供许多低耗(资源)的activities,因此你可以允许用户打开新的activities并且通过点击返回按钮返回到上一个acitvity,就像在浏览器中浏览网页一样。
例如:一个电子邮件应用程序会有一个显示新邮件列表的activity,一个撰写邮件的activity,以及一个阅读邮件的activity。在这个电子邮件应用程序中,虽然这些activities共同合作构成了一系列用户交互体验过程,实际上它们之间是相互独立的。因此,不同的应用程序(app)能够开启(start)这些activities中的一个(如果电子邮件应用程序允许它这么做)。比如,一个照相应用程序可以开启电子邮件应用程序中的activity,通过它撰写新邮件,目的是分享照片。
每一个activity都是以Activity(android.app.Activity)为基类的子类实现。
Services: Activities是拥有短暂生命周期的(short-lived),并且在任意时刻都有可能会被关闭。另一方面,Services被设计成在后台持续运行(long-running)的,并且独立于任何activity。Service不提供用户界面。
例如:当用户在使用不同的应用程序时,一个service可以在后台播放音乐。或者通过网络获取数据而不需要用户通过activity交互。另一个组件,比如一个activity,可以开启一个service并让它运行,或者为了提供相互交流的操作而将这个service绑定到自身。
未完待续……