Android 平台下的四大组件详解之 Services
Android 平台首先就是其开放性,开放的平台允许任何移动终端厂商加入
到
Android 联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和
应用的日益丰富,一个崭新的平台也将很快走向成熟。
开放性对于 Android 的发展而言,有利于积累人气,这里的人气包括消费者
和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。
Android 手机操作系统是一款开源的系统。对编程有所了解的朋友们可以通
过各种编写方式来使这款系统应用于手机中来满足各种需求。下面我们将会对
Android 组件的一些概念进行一个总结,以方便大家的学习。
Android 的一个核心特性就是,一个应用程序能利用另外应用程序的元素
(假如这些应用程序允许这样做)。举个例子,如果你的程序需要展示一个可以
滚动的图片列表,正好有另外一个程序已经有这样一个合适的滚动条并且也允
许其他程序使用,那么你就可以使用这个滚动条来完成你的工作,而不是开发
你自己的。你的应用不需要内含其他应用的代码或者连接到他。相反,它只是
简单的启动了需要的部分。
为了让这个特性能够工作,系统必须能够实现运行一个部分组件被需要的应
用,并为那个部分实例化一个
Java 对象。因此,与大多数系统上的应用不一样,
Android 应用没有为应用中的任何部分提供一个单一的入口(比如说,没有
main()函数)。相反的,他们用系统能实例和运行的本质组件。
下
面
我
们
将
介
绍
Android4
大
组
件
之
Services
服务不需要可视化的用户界面,相反在一段不确定的时间段里运行在后台。
举例,当用户在处理其他问题时,服务可以播放背景音乐,或者他可以从网上
获取数据,计算,提高,提供给活动所需要的结果。每个服务继承于服务基类。
一个基本的例子就是媒体播放器播放列表中的歌曲。播放应用程序可能会有
一个或多个活动,允许用户选择歌曲并播放它们。但是,音乐回放不会被一个
活动处理,因为用户期望音乐在他们离开这个播放程序界面后仍能播放。为了
满足这个要求,这个播放活动应该开启一个在后台运行的服务。系统就能继续
播 放 音 乐 , 即 使 用 户 选 择 播 放 音 乐 后 离 开 了 这 个 界 面 。
可以实现连接到(绑定到)一个正在运行的服务(也可以开启一个当前没有
运行的服务)。连接之后,你可以通过系统给出的一个接口与这个服务进行通
信。对于这个音乐服务,这个借口可以允许用户去暂停,倒退,停止,重放和
回
放
。