Service服务

  服务

Service
,四大主键之一:

首先继承

Service类,重写父类的
onBind方法,绑定服务时会调用,返回 IBinder(接口)对象!

<Binder是接口的实现类>

根据需求,可以继承Binder类,然后把对象返回就可以了

public class MyService extends Service {
    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
}

      服务自己停止服务,调用stopSelf()方法;//停止服务



生命周期:

	onCreate:创建服务时调用该方法
	onBind:绑定服务时调用
	onStartCommand:每次启动服务时会调用
	onUnbind:解除绑定时调用
        onDestroy:销毁服务时会调用


注意:项目清单文件中也必须注册服务

<service android:name=".service.MyService"></service>
 
Activity中启动、停止、绑定、解除绑定服务:

Intent intent=new Intent(this, MyService.class);  意图对象
startService(intent);  启动服务
stopService(intent);  停止服务

绑定服务,需要实现ServiceConnection服务管理器接口.重写两个方法
 class MyServiceConnection implements ServiceConnection{

        @Override  绑定成功时会调用该方法,IBinder对象是服务类里面<span style="font-family: Consolas; font-size: 18px;">onBind方法返回的对象(如果不为空)</span>
        public void onServiceConnected(ComponentName name, IBinder service) {
        }

        @Override  绑定失败时
        public void onServiceDisconnected(ComponentName name) {
        }
    }
MyServiceConnection connection=new MyServiceConnection(); 服务管理器对象

Intent intent=new Intent(this, MyService.class);  意图对象

Service.BIND_AUTO_CREATE:绑定的模式,如果没有创建服务,就先创建,否则直接绑定!
bindService(intent,connection, Service.BIND_AUTO_CREATE); 绑定服务
unbindService(connection);  解除绑定


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值