zoukankan      html  css  js  c++  java
  • Android service介绍和启动方式

    1、Android service的作用

     service通常是用来处理一些耗时操作,或后台执行不提供用户交互界面的操作,例如:下载、播放音乐。

    2、Android service的生命周期

     service生命周期没有activity生命周期那么复杂,它只有onCreate()、onStart()、onDestroy()三个方法,当第一次启动Service时,先后调用了onCreate(),onStart()这两个方法,当停止Service时,则执行onDestroy()方法,这里需要注意的是:如果Service已启动,我们再次启动程序调用该service时,不会在执行onCreate()方法,而是直接执行onStart()方法

    3、Android service的两种启动方式:

     ①、startService():同一应用在任意地方调用startService()方法都能启动Service,然后系统会自动调用onCreate()、onStart(),这样启动的 Service 会一直运行在后台,直到 stopService() 或者 selfStop() 方法被调用。另外如果一个 Service 已经被启动,其他代码再想调用 startService() 方法,则不会执行 onCreate() 的,但会重新执行一次 onStart() 。

     ②、bindService():使用bindService()方法启动时,service会和客户端绑定起来,客户端停止则service也会停止。

     两者区别:startService()与客户端是否退出没关联关系,即使客户端停止运行服务同样会在后台运行,但bindService()是与客户端绑定的,客户端退出service也会自动停止

    4、Android后台服务保持机制

     利用Android系统广播每分钟一次,在系统广播里每分钟检查一次Service的运行状态,如果已经被结束了,就重新启动service。

  • 相关阅读:
    使用urllib
    spring常用的45个注解
    音痴
    android与JS函数传参遗留问题
    方舟编译器源码过一遍流程
    什么是语义学,解释器
    synchronized,ReentrantLock解决锁冲突,脏读的问题
    【Unity3d】ScrollRect自动定位到某点
    计算点到直线的距离】 C#实现
    理财-房月供占工资多少比较合适?
  • 原文地址:https://www.cnblogs.com/dtest/p/4178497.html
Copyright © 2011-2022 走看看