Android四大组件:Service史上最全面解析
来源:互联网 发布:男人的丁丁尺寸 知乎 编辑:程序博客网 时间:2024/05/19 20:45
前言
- Service作为Android四大组件之一,应用非常广泛
- 本文将介绍对Service进行全面介绍(基础认识、生命周期、使用和应用场景)
目录
1. 基础知识
- 定义:服务,属于Android中的计算型组件
- 作用:提供需要在后台长期运行的服务(如复杂计算、下载等等)
- 特点:长生命周期的、没有用户界面、在后台运行
2. 生命周期方法详解
具体请看我写的文章:Android:Service生命周期最全面解析
3. Service分类
3.1 Service的类型
3.2 详细介绍
4. Service的使用解析
由上述可知,服务Service总共分为:
接下来,我将介绍每种Service的具体使用,具体请看我写的文章:Android:(本地、可通信的、前台、远程)Service使用全面介绍
5. 使用场景
- 通过上述描述,你应该对Service类型及其使用非常了解;
- 那么,我们该什么时候用哪种类型的Service呢?
- 各种Service的使用场景请看下图:
6. 其他思考
6.1 Service和Thread的区别
- 结论:Service和Thread之间没有任何关系
之所以有不少人会把它们联系起来,主要因为Service的后台概念
后台的定义:后台任务运行完全不依赖UI,即使Activity被销毁,或者程序被关闭,只要进程还在,后台任务就可以继续运行
其实二者存在较大的区别,如下图:
一般来说,会将Service和Thread联合着用,即在Service中再创建一个子线程(工作线程)去处理耗时操作逻辑,如下代码:
@Override public int onStartCommand(Intent intent, int flags, int startId) { //新建工作线程 new Thread(new Runnable() { @Override public void run() { // 开始执行后台任务 } }).start(); return super.onStartCommand(intent, flags, startId); } class MyBinder extends Binder { public void service_connect_Activity() { //新建工作线程 new Thread(new Runnable() { @Override public void run() { // 执行具体的下载任务 } }).start(); } }
6.2 Service和IntentService的区别
具体请看我写的文章:Android多线程全面解析:IntentService用法&源码
7.总结
- 本文对Service的所有知识进行了全面解析(基础认识、生命周期、使用和应用场景)
如果你还想了解关于Service的其他知识,请浏览以下文章:
Android四大组件:Service史上最全面解析
Android:Service生命周期最全面解析
Android:(本地、可通信的、前台、远程)Service使用全面介绍
Android:远程服务Service(含AIDL & IPC讲解)
Android多线程全面解析:IntentService用法&源码接下来会介绍继续介绍Android开发中的相关知识,有兴趣可以继续关注Carson_Ho的安卓开发笔记
请点赞!因为你们的赞同/鼓励是我写作的最大动力!
欢迎关注Carson_Ho的简书!
不定期分享关于安卓开发的干货,追求短、平、快,但却不缺深度。
0 0
- Android四大组件:Service史上最全面解析
- Android四大组件:Service史上最全面解析
- android四大组件-service全面解析一
- Android四大组件:Service服务史上最全面解析
- Android四大组件:BroadcastReceiver史上最全面解析
- Android四大组件:BroadcastReceiver史上最全面解析
- Android四大组件之Service全面学习
- Android四大组件之一---BroadcastReceiver全面解析
- Android 四大组件之Service解析
- Android四大组件之Service解析
- Android四大组件----Service
- Android四大组件---Service
- android四大组件service
- android四大组件---service
- android四大组件---Service
- Android四大组件-Service
- Android四大组件:Service
- (Android四大组件)---Service
- CSS position 属性
- java制作简易计算器
- 15个初学者必看的基础SQL查询语句
- python中迭代时使用索引
- ssl学习
- Android四大组件:Service史上最全面解析
- Spring MVC+整合Batis 经过测试版
- MySQL利用外键实现级联操作
- 1104. Sum of Number Segments (20)
- Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recogntion(1)
- angularjs-$resource and RESTful API
- 乐视的视频播放
- 安卓AutoCompleteTextView组件的使用实例
- 关于 Java 的10个谎言