Service是一个应用程序组件
Service没有图形化界面
Service通常用来处理一些耗时比较长的操作,可以使用Service更新ContnetProvider,发送Intent以及启动系统的通知等等。
Service不是一个单独的进程,Service不是一个线程。
Service生命周期
Android Service的生命周期并不像Android中Activity那么复杂,因为它只继承了 onCreate(),onStart(),onDestroy()三个方法,当我们第一次启动Service时,先后调用了 onCreate(),onStart()这两个方法,当停止Service时,则执行onDestroy()方法,这里需要注意的是,如果 Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。
1.public IBinder onBind(Intent arg0) 将一个Service和一个Activity绑定
2.public void onCreate() 创建一个Service对象时调用
3.public int onStartCommand(Intent intent, int flags, int startId) 当启动或者重新启动对象时调用
4.public void onDestroy() 销毁一个Service对象时调用
Service需要在AndroidManifest.xml注册文件中注册
- <service android:name=".FirstService"></service>
- 卸载一个Activity
- Adb uninstall com.bjl.Activity25
1. Started Service中使用StartService()方法来进行方法的调用,调用者和服务之间没有联系,即使调用者退出了,服务依然在进行 【onCreate()- >onStartCommand()->startService()->onDestroy()】,注意其中没有 onStart(),主要是被onStartCommand()方法给取代了,onStart方法不推荐使用了。
2. BindService中使用bindService()方法来绑定服务,调用者和绑定者绑在一起,调用者一旦退出服务也就终止了【onCreate()->onBind()->onUnbind()->onDestroy()】。