电话录音服务只是在服务内部进行录音以及调用PhoneManager对象.许多时候服务在处理业务后,
需要和其它程序进行通信.startService()和stopService()适用于调用者和服务之间没有交
互的情况,否则应该使用bindService()和unbindService()方法.
调用bindService()方法时:
1.服务若没有创建
s.onCreate()--> s.onBind() --> 服务与访问者绑定在一起.
如果访问者退出:
s.onUnBind()--> s.onDestroy();
2.服务已经创建
不会导致调用多次服务的创建(onCreate())和绑定(onBind()),如若解除绑定可调用
unbindService()方法,系统同样会调用服务的onUnbind()--> onDestroy()方法.
onBind()只有调用bindService()方法才会触发该方法的调用.如果服务已经被绑定,该方法
不会执行多次.
onUnbind()方法只有调用unbindService()方法才会导致该方法的执行.
客户端和服务通过IBinder对象联系在一起.bindService()方法调用时,需要Intent,
ServiceConnection和flag参数,其中serviceConnection对象用于接收服务onBind()方法
返回的IBinder对象.并且该对象会传入到第二个参数serviceConnetion对应的方法中.触发方法
的回调.总而言之,使得客户端持有到达service对象的引用.