首先在service的实现类中通过重写onBind方法,返回一个Binder对象与activity联系。
然后在activity中,创建一个serviceConnection的匿名对象,重写其中的两个方法onServiceConnected和onServiceDisconnected方法,主要用于activity和service建立关联和解除关联时使用。
在onServiceConnected方法中,获取onBind返回的Binder对象进行操作。
其中,onServiceConnected和onServiceDisconnected方法不是显式调用,而是通过activity中的bindService和unbindService执行。
在service销毁方面,其中,startService与stopService对应,bindService与unBindService对应,但是,如果开启服务时,同时调用了startService和bindService,则必须同时使用两个销毁函数进行销毁。一个service销毁的必要条件:没有activity关联,停止状态。