天天看点

android-Service介绍

[color=red][size=large]Service介绍[/size][/color]

Android中的服务和windows中的服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。

由于没有可视化界面,Service都是从其它程序组件中启动、停止和控制,这些组件包括其它的Service、Activity和Broadcast Receiver。如果你的应用程序正常且不间断的运行,而不直接依赖于用户输入,Service是你最佳的选择。

[color=red][size=large]Service生命周期[/size][/color]

服务常用生命周期回调方法如下:

onCreate() 该方法在服务被创建时调用,该方法只会被调用一次,无论调用多少次startService()或bindService()方法,服务也只被创建一次。

onDestroy()该方法在服务被终止时调用。

Service对象不能自己启动,需要通过某个Activity、Service或者其他Context对象来启动。启动的方法有两种,Context.startService和Context.bindService()。两种方式的生命周期是不同的,具体如下所示。

Context.startService方式的生命周期:

启动时,startService –> onCreate() –> onStart()

停止时,stopService –> onDestroy()

Context.bindService方式的生命周期:

绑定时,bindService -> onCreate() –> onBind()

解绑定时,unbindService –>onUnbind() –> onDestory()

[size=large][color=red]Service实现[/color][/size]

定义一个Service只需要如下两步:

第一步:继承Service类

public class SMSService extends Service { } 这里可以选择要实现的方法

第二步:在AndroidManifest.xml文件中的<application>节点里对服务进行配置:

<service android:name=".SMSService" ”></service>