android自定义service,Android自定义Service的启动方式

一. 自定义Service启动方式

Service没有用户界面,运行与后台。一般用于给前台Activity提供特定服务。服务不能自己运行,启动用户自定义Service的方式有两种:Context.startService

或 Context.bindService。

(一)startService

使用startService()方法启用服务后,调用者与服务之间没有关连。调用者直接退出(假设应用没有退出)而没有调用stopService的话,Service会一直在后台运行。下次调用者再起来仍然可以

1)启动流程:

如果调用前服务没有被创建,则会引起onCreate()->onStart();

如果已被创建,则多次调用startService只会引起onStart()被多次调用。

2)结束方式:

只能调用Context.stopService()结束服务,系统会自动调用到onDestroy()方法。

(二)bindService

使用bindService()方法启用服务,调用者与服务绑定在一起了,调用者一旦退出,服务也就自动终止。

1)启动流程:

如果调用前服务没有被创建,则会引起onCreate()->onBind();

如果已被创建但没有被绑定,则会引起onBind();

如果服务已被绑定,则多次调用bindService并不会引起onCreate()和onBind()被多次调用。

2)结束方式:

调用者退出,系统会自动调用服务到onUnbind()->onDestroy(

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值