service服务程序

  service是运行在后台的服务程序,地位和activity是并列的,不提供可视化界面和用户进行交互。

  一、启动服务程序:

 1、Intent  serviceIntent = new Intent();

      //设置Intent的action属性

     serviceIntent.setAction(com.dannyAndroid.service.action.MUSIC_SERVICE);

  //启动service

  startService(serviceIntent);

 2、通过bindService绑定Service

  //ServiceConnection参数

  ServiceConnection conn = new ServiceConnection(){

   //重写链接和断开回调函数

……

  }

    //第一参数:Intent对象,第二参数:判断service绑定和断开是否成功,第三参数:设置绑定动作的选项,一般设置为BIND_AUTO_CREATE表示绑定是自动创建Service

   Intent  serviceIntent = new Intent();

  bindService(serviceIntent,conn,Service.BIND_AUTO_CREATE);

————————————————注意————————————

需要再AndroidManifest.xml文件中声明service的标签

<service android:enabled="true"  android:name=".MusicService"></service>

二、service的生命周期

1、通过startService()方法启动的service

onCreate--onStart--onDestroy

必须显式调用Context.stopService()来结束service

2、通过bindService()绑定Service

onCreate--onBind--onUnbind--onDestroy

不需要显式调用Context.stopService()来结束service,系统会自动调用

——————————注意——————————

上面两种生命周期是可以结合在一起的,可以先启动再绑定,但无论对同个service进行多少次启动或绑定,onCreate方法只会执行一次。如果Service已经被绑定,则显式调用stopService将不能停止该service,必须先执行UnbindService方法,才能同个stopService方法停止并关闭service。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值