需求: 如果希望调用服务里面的接口,有不希望服务在activity结束的时候被销毁,那么就使用混合方式启动服务。
启动服务: bindService 和 startService 不分先后
Intent intent=new Intent(MainActivity.this,MyService.class);
bindService(intent,serviceConnect,BIND_AUTO_CREATE);
startService(intent);
销毁服务:
单独调用解绑服务的方法,服务不会被销毁只会回调 onUnbind
unbindService(serviceConnect);
单独调用停止服务的方法,服务也不会被销毁
stopService(intent);
备注:必须要同时调用 stopService 和 unbindService 方法服务才能被停止,也就是说只要有一种方式存活,服务就会继续运行。
由于Acitvity退出会自动调用unbindService 销毁服务, 所以在activity里面调用了stopService 方法,退出activity之后服务会自动销毁。