有两种办法:
第一种是通过调用Context.startService()启动, 调用Context.stopService()结束, startService可以传递参数给Service
第二种方式是通过调用Context.bindService()启动,调用Context.unbindService()结束, 还可以通过ServiceConnection访问Service .
二者可以混合使用,比如说可以先startService()再unbindService()
Service的生命周期
1. startService()后, 即使调用startService()的进程结束了. Service仍然还存在,知道有进程调用stopService(), 或者Service自己自杀(stopSelf())就没法了.
2. bindService()后,Service就和调用bindService()的进程同生共死,也就是说当调用bindService()的进程死了, 那么它bind的Service也要跟着被结束, 当然期间也可以调用unbindService()让Service结束
3. 两种方式混合使用时,比如说你startService()了, 我bindService()了, 那么只有你stopService()了而且我也unbindService()了,这个Service才会被结束.