2022.5.4(大家监督我是否学习)
返回后,service依然会保留
调用服务内部的方法
绑定服务
1在firstService中
创建一个内部类InnerBinder 继承自Binder
Binder已经实现Bind的接口
返回一个对象
要先在内部类中创建一个方法,再去调用service中的方法,不能直接调
return new InnerBinder();
2.Intent intent=new Intent();
intent.setClass();
mIsService=bindService(intent,mConnection,BIND_Auto_Create);
1.intend传入意图
2.mConection:是回调方法,拿到相应对象
3.Bind_Auto_Create:绑定自动创建service
创建一个ServiceConnection
将传回的binder新创建的对象,并用该对象去调用相应的方法
2.两种启动方法的异同
如果用BindSerivce的话,一定要记得解绑
1.开启服务这种方式可以保证服务长期在后台运行
2.绑定服务启动服务没法保证服务在后台长期进行
隐藏服务内部的实现,接口实现
先让内部内的接口的方法,再让内部类继承这一个接口,从而实现相应的方法,能够实现类的私有化
只需将强转设为iCommucation的方法
多个方法可以都用接口是实现