Service是一个具有较长生命周期但是并没有用户界面的程序。
Service一般是由Activity启动,但是并不依赖于Activity,即当Activity的生命周期结束时,Service仍然会继续运行,直到自己的生命周期结束为止。Service的启动方式有两种。
1.startService 方式启动
当Activity调用startService方法启动Service时,会依次调用onCreate和onStart方法来启动Service,而当调用stopService方法时,又会调用onDestroy方法结束Service。Service同样可以在自身调用stopSelf或stopService方法来结束Service。
2.bindService方式启动
另一种启动方式是调用bindService方法启动Service,此时会依次调用onCreate和onBind方法启动Service。而当通过unbindService方法结束Service时,则会依次调用onUnbind和onDestroy方法。
详细例子请参见Sample_2_6例子
需要注意的是当使用Service的时候,需要在AndroidManifest.xml中</activity>后面添加一句“<service android:name=".MyService"/>其中MyService是你自己创建的Service类名,替换成自己创建的Service类名,前面记得有一个“.”号
在该例子中,创建了MyService类,他派生自Service,该类中重写了onCreate,onStart,onBind,onDestroy,onUnbind方法,并创建了一个MyTread线程类,该线程其在onStart方或onBind方法中启动的
同样还创建了一个Activity,在活动中定义一个Intent对像:Intent intent=new Intent(this,MyService.class)
然后通过startService(intent)开启服务,通过stopService(intent)终止,