Service 是 Android 系统提供的四种组件之一它的地位和Activity是并列的只不过没有 Activity 的使用频率高。Service是运行在后台的一种服务程序一般很少和用户交互,因此没有可视化界面。
定义一个Service类比较简单,只要继承Service类实现其生命周期中的方法就可以了。一个定义好的Service必须在 AndroidManifest.xml 配置文件中通过<smice>元素声明才能使用。
Service 有自己的生命周期,我们可以调用startService()启动一个 Service 或者使用 bindService()方法来绑定1个存在的Service.还可以通过RPC(远程进程调用)机制来实现不同进程间Service 的调用。
创建一个Service类比较简单,只要定义一个类继承Service.覆盖该类中相应的方法就可以了。Service中定义了一系列和自身声明周期相关的方法,这些方法有:
1、onBind(Intent intent): 是必须实现的一个方法,返回一个绑定的接口给Service。
2、onCreate():当Service 第一次被创建时,由系统调用。
3、onStart (Intent intent,int startld): 当通过startService()方法启动Service时,该方法被调用。
4、onDestroy(): 当Service不再使用,系统调用该方法。
Service使用startService(Intent intent)方法,和启动Activity非常相似,也是传递一个Intent。当调用startService()方法时,被调用的Service会调用它的onCreate()方法(如果该Service还未创建),接着调用onStart()方法。一旦Service启动后将一直运行直到调用了stopSelf()或者stopService()。