Android服务Service详解(作用,生命周期,AIDL)系列文章-为什么需要服务呢?
来源:互联网 发布:ubuntu安装gnome桌面 编辑:程序博客网 时间:2024/05/21 19:47
Android服务Service详解(作用,生命周期,AIDL)
最近沉迷于上班,没有时间写博客了。解衣入睡,未眠,随起床写一篇博客压压惊!
##我们android系统为什么需要服务Service呢?
在某些场景下,我们需要应用程序长期在后台跑着,对吧!但是呢,我们的应用已经退到后台了。比如说,我们的播放音乐,我们希望可以退到后台以后,还可以屁颠屁颠地继续播放是吧。或许,你会说,我们起一下子线程播放,即使我们退出了应用,这个线程还是在跑的呀!也就是说,开启一个子线程,也可以没有界面地在后台跑嘛!
那么,我们先要了解一下在android系统下各进程的优先级了!先来看几个专有名词吧:
知道了前面的几大专用名词,我们要知道的是内存的大小是有限制的,也就是设备的大小是有限的。android操作系统需要合理地管理这些资源,根据优先级,保证用户可以使用等等。所以需要对这些进程进行一个优先级排列,当资源不够用的时候呢,就会去杀掉,或者说清空低级别的进程。
所以有了:
前台进程>可视进程>服务进程>后台进程>空进程
好,当你看到这里的时候,我们回到前面的,开一个子线程,执行一些没有界面也不会退出的任务。那么我们这样去操作:开启一个子线程以后,我直接最小化,这个程序,它是不是就变成了一个后台进程呢?对吧,当资源不够用的时候,它呢就把这个后台进程杀死,并且,这个子线程再也不会起来了!
但是,服务不一样,首先,比后台进程的优先级高,所以不那么容易杀死,另外,服务真的因为资源不够而被杀死了,等到资源释放够了,或者其他东西执行完了,够资源了,服务又自动地跑起来了!
所以说,我们为什么要用服务呢?
两点原因:
最近沉迷于上班,没有时间写博客了。解衣入睡,未眠,随起床写一篇博客压压惊!
##我们android系统为什么需要服务Service呢?
在某些场景下,我们需要应用程序长期在后台跑着,对吧!但是呢,我们的应用已经退到后台了。比如说,我们的播放音乐,我们希望可以退到后台以后,还可以屁颠屁颠地继续播放是吧。或许,你会说,我们起一下子线程播放,即使我们退出了应用,这个线程还是在跑的呀!也就是说,开启一个子线程,也可以没有界面地在后台跑嘛!
那么,我们先要了解一下在android系统下各进程的优先级了!先来看几个专有名词吧:
- 前台进程:你可以看到应用的界面,并且可以和它交互,这就是前台进程啦!
- 可视进程:你可以看到这个进程,但是不可以操作,这也是和前台进程的区别,就是不可以操作。
- 服务进程:长期于后台执行,没有界面也在跑的进程就叫做服务进程啦。
- 后台进程:所谓的后台进程就是程序最小化,本质上是没有退出的。
- 空进程:程序程序的组件没有任何的活动,也就是挂了嘛!
知道了前面的几大专用名词,我们要知道的是内存的大小是有限制的,也就是设备的大小是有限的。android操作系统需要合理地管理这些资源,根据优先级,保证用户可以使用等等。所以需要对这些进程进行一个优先级排列,当资源不够用的时候呢,就会去杀掉,或者说清空低级别的进程。
所以有了:
前台进程>可视进程>服务进程>后台进程>空进程
好,当你看到这里的时候,我们回到前面的,开一个子线程,执行一些没有界面也不会退出的任务。那么我们这样去操作:开启一个子线程以后,我直接最小化,这个程序,它是不是就变成了一个后台进程呢?对吧,当资源不够用的时候,它呢就把这个后台进程杀死,并且,这个子线程再也不会起来了!
但是,服务不一样,首先,比后台进程的优先级高,所以不那么容易杀死,另外,服务真的因为资源不够而被杀死了,等到资源释放够了,或者其他东西执行完了,够资源了,服务又自动地跑起来了!
所以说,我们为什么要用服务呢?
两点原因:
- 服务可以长期在后台运行,即使没有界面,优先级比较高,不容易被杀死。
- 即使服务被杀死了,也可以自动地被操作系统启动起来。
网易云视频:
社区网站:
阅读全文
0 0
- Android服务Service详解(作用,生命周期,AIDL)系列文章-为什么需要服务呢?
- Android服务Service详解(作用,生命周期,AIDL)系列文章--远程服务AIDL&IPC
- Android服务Service详解(作用,生命周期,AIDL)系列文章--服务的生命周期
- Android服务Service详解(作用,生命周期,AIDL)系列文章--绑定服务
- Android服务Service详解(作用,生命周期,AIDL)系列文章--服务绑定和开启混合使用
- Android服务Service详解(作用,生命周期,AIDL)系列文章--进一步封装绑定服务(私有化代理类)
- Android Service服务(二)AIDL
- Android的服务Service(2)-- AIDL
- Android服务Service-AIDL(三)
- Android中的服务(service)--AIDL远程服务
- Android Service服务的生命周期
- Android Service 服务及生命周期
- Android:Service:服务的生命周期
- 绑定的服务既然生命周期跟与其绑定的activity一样,那为什么需要绑定的服务呢?
- Android:远程服务Service(含AIDL & IPC讲解)
- Android:远程服务Service(含AIDL & IPC讲解)
- android跨进程调用Service(AIDL服务)
- Android service服务、aidl接口demo
- C++难点的一些总结(1)
- 在windows下Qt5.7/C++怎么连接MySQL数据库
- node.js 学习笔记
- 207. Course Schedule Medium
- html中的其他的常用标签
- Android服务Service详解(作用,生命周期,AIDL)系列文章-为什么需要服务呢?
- 编码GBK的不可映射字符
- GAN入门教程 | 从0开始,手把手教你学会最火的神经网络
- Java程序员的几条建议
- OBJECTIVE-C编程(第2版)学习笔记2
- 使用PHP开发App接口的一些体会
- 剑指offer——机器人的运动范围(回溯)
- Android 底部导航栏(底部Tab)最佳实践
- 阿里云服务器3306端口MySQL连接异常