android 服务被杀,Android服务被杀

首先一定要看:

http://developer.android.com/guide/components/processes-and-threads.html#Lifecycle

关键是在Android上,一个进程只是一个代码的容器,或者一个或多个组件(活动,服务,接收器,提供者).默认情况下,.apk中的所有组件都可以获得自己的专用进程,它们都在一起运行.这几乎总是你想要的.

当用户直接与该进程的组件进行交互(这是一个活动)时,Android会非常努力地保持该进程的运行,除非在非常情况下,否则不会看到它被杀死.

当用户不再直接与过程进行交互时,相对于参考文档中描述的其他过程,它变得消耗性.也就是说,在进程持有用户已经使用的活动的进程之前,空进程(没有有趣的组件)将被杀死,这将在具有正在运行的服务的进程之前被杀死.因此,运行服务将倾向于以其他流程为代价来维护您的流程.

同时,我们需要处理好越来越多的应用程序,这些应用程序通常无限期地运行,并且经常伴随着内存泄漏.因此,服务运行时间越来越长,Android将越来越难以保持其进程.有效地,这意味着将其移动到后台桶,直到内存不足者将其取出.之后,如果服务仍然要运行,那么将创建一个新进程,以便重新启动.

结果是,对于正在运行很长时间的正常服务,预期他们的过程会在一段时间后被杀死的行为.这不需要停止服务;一个想要继续运行的服务将会这样做,它只需要在一个新的过程中被实例化.

当然,只要用户正在与您的进程中的活动进行交互,该过程将不会被杀死,因为它将其拖到前台类别,无论其中的任何服务发生了什么.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值