android service生命周期
来源:互联网 发布:网络最火的直播软件 编辑:程序博客网 时间:2024/06/06 01:31
说明:
首先要注意的是 Service是没有OnStop方法的,我们在使用Service的时候可以使用startService和bindService两种方式或者同时用这两种方式。
下面我们分别介绍下两种方式下service的生命周期是如何的。
一、
通过startService启动Service 的方式
生命周期为图中的左边所展示的样子。通过startService启动的service是运行在后台的,即使启动它的Activity销毁了,这个Service依然是存在运行的。
如果我们Service已经启动,那么当我们再次startService的时候,不会执行onCreate,而是执行onStartComment方法。
当我们调用StopService后,Service便会执行OnDestroy方法销毁。
二、
通过bindSerVice启动Service的方式
生命周期为途中右边所展示的样子,通过bindService启动的Service是与启动这个Activity是相绑定的,即使Activity中没有unBind方法,那么当Activity销毁时Service也会调用unBind方法,之后是调用Service的OnDestroy方法。
如果我们bindService之后,那么当我再次调用bindService的时候,是不执行任何方法的,但是当退出的时候会抛出以下异常,
但是当我们调用unBind之后,Service就会执行unBind和onDestroy,当我们在调用bindService后就可以重新bind了。
三、
如果我们用这两种方式的话。
首先调用StartService方法启动Service,在通过bindService方法绑定Service。
如果我们调用unBind方法后,Service调用unBind方法,但是不会调用OnDestroy方法。
但是当我再次调用bindService的时候是绑定不上的,此时Service中的unBind方法返回的是false
当我们把Service中的unBind方法返回ture的话,那么当我们调用完unBind方法后,再次调用bindService的时候,Service的onBind方法不会被调用,而是reBind方法会执行。
- android service 生命周期
- 【Android】Service 生命周期
- android service生命周期
- android service生命周期
- Android 中Service生命周期
- Android Service生命周期
- android service生命周期
- android service 生命周期
- android service 生命周期
- Android Service的生命周期
- android 58Service生命周期
- Android service生命周期
- Android Service 生命周期
- android service生命周期
- Android 的Service生命周期
- android service 生命周期
- Android Service 的生命周期
- Android Service生命周期
- 国家地区语言缩写码
- github简单使用过程
- Android 播放声音
- 智能生活 “视”不可挡——首届TCL杯HTML5智能电视开发大赛等你来挑战
- OpenGL像素操作
- android service生命周期
- Interleaving String
- codeforces 9D How many trees? (组合二叉树)
- 2
- 防信息(电磁)泄漏计算机
- linux常用端口
- 斯坦福机器学习公开课学习笔记(2)—监督学习 梯度下降
- 设计模式-----策略模式(strategy)
- GitHub详细教程