Android Service用法知识点的讲解
Android Service
学习Service相关知识点:
android service
的基础知识,生命周期,service
分类,运行地点(本地服务,远程服务),运行类型(前台服务,后台服务),功能(可通信与不可通信)。service
和Thread
的区别。
service基础
概述:
在Android
中Service
是一个在后台执行长时间运行操作,而不需要和用户交互的应用程序组件。主要是用来后台处理网络事务,播放音乐,执行文件操作和content provider
进行交互等。
service到底是什么?
service
作为Android
的四大组件之一,程序退出的时候,仍能在后台服务,即保活。在后台执行一系列计算任务,耗时的操作建议在单独的线程中执行。
服务时一种可以在后台长时间的运行,没有用界面的应用组件,即是activity
被销毁也不会受到影响,service
运行在主线程当中,不能做长时间的运行操作。
service
不能做耗时操作,无用户界面,生命周期长,并在后台运行。本地服务运行在主线程中,主线程停止,服务则停止,远程服务,不受activity
的影响;前台服务,用户可见,后台服务,用户不可见,前台被终止,用户知道,后台用户则无法知道;可通信的后台服务,两种启动模式,随着调用者退出而销毁服务,不可通信,即使调用者退出,service
也在。
service和Thread的区别
Thread
开启子线程,在其耗时操作,耗时操作可以开启线程来完成,Thread
是程序的最小单元,service
运行时在主线程上,不能耗时操作,相比Thread
,service
并不是那么独立。
对于,Service服务的分两种类:
启动状态:通过startService()
,绑定状态:通过bindService()
(英文理解:开启服务,绑定服务)。
Call to startService -> onCreate() -> onStartCommand() -> Service running -> onDestroy()
Call to bindService() -> onCreate() -> onBind() -> onUnbind() -> onDestroy()
service的工作流程
Service的工作过程
生命周期
这两种服务各有各的特色。不过在理解之前,先看看它们的生命周期情况(图片来源于官方):
onCreate():创建时调用
onStartCommand():启动时调用
onBind():被绑定时调用
onUnbind():被解绑时调用
onDestroy():停止时调用
startService()
stopService()
bindService()
unbindService()
onCreate() -> onStartCommand() -> onDestroy()
onCreate() -> onBind() -> onUnbind() -> onDestroy()
结语
本文主要讲解 Android Service用法知识点的讲解
下面我将继续对
Java
、Android
中的其他知识 深入讲解 ,有兴趣可以继续关注小礼物走一走 or 点赞
转载于:https://www.cnblogs.com/dashucoding/p/9440424.html
Android Service用法知识点的讲解相关推荐
- Android Service的onStartCommand返回值用法
2019独角兽企业重金招聘Python工程师标准>>> Android Service的onStartCommand返回值用法 本文目的:使读者快速理解 1.START_STICKY ...
- 大疆Android SDK API知识点讲解及课程最终demo展示
大疆Android SDK API知识点讲解及课程最终demo展示 大疆Android SDK课程--主要讲解Android开发环境的搭建.如何连接无人机.获取摄像头信息以及如何导入高德地图到APP当 ...
- 【Android】 Android Service生命周期及用法
原文来自: 首先我们要知道Service具体是干什么的,什么时候用到?以及它的生命周期等. Service概念及用途: Android中的服务,它与Activity不同,它是不能与用户交互的,不能自己 ...
- Android Service完全解析,关于服务你所需知道的一切(下)
转载请注册出处:http://blog.csdn.net/guolin_blog/article/details/9797169 在上一篇文章中,我们学习了Android Service相关的许多重要 ...
- Android Service完全解析,关于服务你所需知道的一切(上)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/11952435 相信大多数朋友对Service这个名词都不会陌生,没错,一个老练的A ...
- 【Android 面试基础知识点整理】
针对Android面试中常见的一些知识点整理,Max 仅仅是个搬运工.感谢本文中引用文章的各位作者,给大家分享了这么多优秀文章.对于当中的解析,是原作者个人见解,有错误和不准确的地方,也请大家积极指正 ...
- android 浏览器源码分析,从源码出发深入理解 Android Service
原标题:从源码出发深入理解 Android Service 原文链接: 建议在浏览器上打开,删除了大量代码细节,:) 本文是 Android 系统学习系列文章中的第三章节的内容,介绍了 Android ...
- Android Service 服务(二)—— BroadcastReceiver
一. BroadcastReceiver简介 BroadcastReceiver,用于异步接收广播Intent,广播Intent是通过调用Context.sendBroadcast()发送.Broad ...
- 【Android】Android Service 服务
参考网址:http://blog.csdn.net/ithomer/article/details/7364024 一. Service简介 Service是android 系统中的四大组件之一(Ac ...
- android中Adapter适配器的讲解
android中Adapter适配器的讲解 Adapter(适配器的讲解) 适配器就我自己来看,我觉得这是一个非常重要的知识点,Adapter是用来帮助填出数据的中间桥梁,简单点说吧:将各种数据以合适 ...
最新文章
- DNN和IBatis.Net几乎同时发布新版本
- IAR for msp430 MDK中 warning: #223-D: function xxx declared implicitly 解决方法
- phpcms v9 实现外部栏目链接在新窗口打开
- 使用Keil MDK以及标准外设库创建STM32工程
- VS2012+Win7网站发布详细步骤
- Python实现批量导入Markdown文件到WordPress(博客搬家工具,代码已开源)
- Axios 二次封装(超详细)
- 小程序中如何引用阿里图标
- 3D建模电脑配置推荐(收藏)
- 手机上什么App能连接mysql_这款APP让你的手机瞬间变身服务器,php+mysql,太硬核了!...
- Alios-Things之wifi模块二次开发-(1)搭建Alios-Things开发环境(基于ubuntu 16.0.4)
- 请教刷机教程9008线刷
- 如何在Vue中使用lottie加载SVG动画
- 搭建react + typescript + airbnb eslint 项目
- js距离单位换算_js实现单位互换px/cm/mm篇
- 【机器学习】一文读懂正则化与LASSO回归,Ridge回归
- VS2017设置DLL和LIB的输出目录
- avr单片机c语言 右移,AVR左移右移递增减流水灯
- ERROR2002 can not connect to lcoal Mysql Server throuth socket '/tmp/mysql.sock'
- 【linux 上批量下载amazon s3数据】
热门文章
- linux强制获得锁,Linux中的两种文件锁——协同锁与强制锁
- 合并账号_亚马逊账号最新死法:合并listing和折扣促销
- html视频播放快进按钮,【浏览器插件】Video Speed Controller – 网页视频倍速、快进、回放功能0.07~16 倍...
- Keras验证集切分
- 计算机视觉方面的数据集收藏(CV Datasets on the web)
- python开发技术文档范文_常用python编程模板汇总
- python初学入门教程_python初学者怎么入门|python基础教程|python入门|python教程
- 插入附件 文件名显示不全_批量插入、提取图片,这几招要会掌握
- DevOps使用教程 华为云(17)git 比较2个分支版本的差异 某个具体文件的差异
- FISCO BCOS共识优化之路