Service是什么
Service是一个应用程序组件
Service没有图形界面
Service通常用来处理一些耗时较长的操作
可以使用Service更新Content Provider,发送Intent以及启动系统的通知等等
Service不是一个单独的进程
Service不是一个线程
步骤:
1写一个MyService类继承Service,重写onCreate(当创建一个Service之后会首先调用该方法)、onBind、onStartCommand(接收startService方法传递过来的Intent对象来决定这个Service中什么,通常会在该方法中启动新线程来完成对intent对象的操作)、onDestroy(停线程、清理资源等)等方法
2.在Manifest文件中注册 <service android:name=".MyService"></service>
3.调用Activity的startService(intent)方法 Intent Intent= new Intent(MainACtivity.this,MyService.class)或者intent.action(Service在manifest中注册时写的Action)
4.stopService(intent)
绑定bind
1在service里面定义一个binder的实现类里面添加一个方法
2.在onbind方法里面返回这个对象
3.在Activity里面调用bindService(intent,serviceconnection,flags)方法
4.需要传入一个实现Serviceconnection接口的类,当绑定成功的时候就会通过其内的
onServiceConnection()方法的ibinder参数把service的binder传进来