Android Service---终止服务

翻译 2012年02月27日 19:01:00
被启动类型的服务必须管理它自己的生命周期。也就是说除非系统要回收系统内存,否则系统不会终止或销毁这个服务,在onStartCommand()方法返回后,这个服务会继续运行。因此而这种类型的服务必须通过调用stopSelf()方法或另一个组件通过调用stopService()方法才能终止。

一旦用stopSelf()方法或stopService()方法请求终止服务,那么系统一有可能就会销毁这个服务。

但是,如果你的服务同时处理多个对onStartCommand()方法的请求,那么在你完成请求启动过程时,不应该终止这个服务,因为你的服务可能正在接受一个新的启动请求(在第一个请求结束时终止服务有可能会终止第二个请求)。要避免这个问题,你能够使用stopSelf(int)方法来确保你请求终止的服务始终是基于最近启动的请求。也就是说,调用stopSelf(int)方法时,你要把那个要终止的服务ID传递给这个方法(这个ID是发送给onStartCommand()方法的)。这样如果服务在你调用stopSelf(int)方法之前收到了一个新的启动请求,那么这个ID就会因不匹配而不被终止。

警告:重要的是你的应用程序要在工作结束时终止它们的服务,从而避免浪费系统资源和电池电量。如果需要,其他的组件能够调用stopService()方法终止服务。即使对于能够绑定的服务,如果这个服务接收了对onStartCommand()方法的调用,你也必须自己来终止这个服务。

关于服务的生命周期的更多信息,请看“管理服务的生命周期”

Android Service---在前台运行服务

前台服务是哪些被认为用户知道的并且在内存低的时候不允许系统杀死的服务。前台服务必须给状态栏提供一个通知,他被放到了“正在进行中(Ongoing)”标题之下,这就意味着直到这个服务被终止或从前台删除通知...
  • linux_Mary_me
  • linux_Mary_me
  • 2014年03月10日 13:41
  • 835

Android Service---管理服务的生命周期

服务的生命周期跟Activity的生命周期类似。但是生命周期甚至比你关注服务如何创建和销毁更重要,因为服务能够在用户不知情的情况下在后台运行。 服务的生命周期---从创建到销毁---可以被分为以...
  • zjx2014430
  • zjx2014430
  • 2014年06月06日 18:56
  • 319

Android之服务Service---电话监听

Android中的服务和windows中的服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。服务的开发比较简单,如下: 第一步:继承Se...
  • hahashui123
  • hahashui123
  • 2011年12月13日 13:03
  • 954

SCCM2012 R2实战系列之十:解决WDS服务无法启动问题(错误1067:进程意外终止)

在操作系统分发(OSD)之前需要开启PXE服务,然后会自动在SCCM服务器安装Windows Deployment Service. 但是之前在一次项目过程当中发现启用PXE服务后WDS无法启动,本以...
  • stephenh1991
  • stephenh1991
  • 2017年09月01日 13:46
  • 184

Android Service---创建绑定类型服务

绑定类型的服务允许应用程序组件通过调用bindService()方法与服务创建一个长期的关联(通常不允许组件通过调用startService()方法来启动它)。 在你想要Activity以及应用程序...
  • FireOfStar
  • FireOfStar
  • 2012年02月27日 19:01
  • 1497

android(36)(开启服务与终止服务)

1.开启服务: public void start(View view){ //开启服务。 Intent intent = new Intent(this,Sy...
  • u014756517
  • u014756517
  • 2015年12月07日 15:43
  • 223

Android中服务的开启和停止的方式以及各种情况下的存活状态

服务是我们在Android开发中很常见的一个组件,号称那个啥?四大组建之一对吧,嘿嘿,没记错哈。今天小金子要说的不只是开启单一的开启服务和停止服务方法的使用,还要混合使用这几个方法,并且记录下来!  ...
  • u011692041
  • u011692041
  • 2015年11月16日 19:41
  • 5680

Windows Server 2003 终止服务后的一个月,想它想它想它...

距离2015年7月14日,微软终止对Windows Server 2003的服务已有一个多月,想必很多企业现在的心态还是希望回到过去有安全性修补程序和漏洞通知的日子。但这时,企业要做的不是没有结果的苦...
  • iqushi
  • iqushi
  • 2015年08月19日 15:58
  • 1833

安卓-启动服务并让服务自己结束

让服务自己结束主要用到一个API就是stopSelf(); 下面写一个demo来演示下: 1)主界面中一个按钮,点击启动服务 2)服务中开始服务时开启一个线程执行一个for循环打印日志 3)当...
  • wwt831208
  • wwt831208
  • 2017年02月17日 11:45
  • 1150

实现Python HTTP服务方法大总结

本文转载:http://developer.51cto.com/art/201002/181934.htm 本文介绍如何快速实现一个Python HTTP服务,实现一个微型的HTTP服务程序来说是很...
  • lolashe
  • lolashe
  • 2014年10月25日 20:44
  • 841
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android Service---终止服务
举报原因:
原因补充:

(最多只允许输入30个字)