Service的相关知识

Service是一个应用程序组件

Service没有图形化界面

Service通常用来处理一些耗时比较长的操作,可以使用Service更新ContnetProvider,发送Intent以及启动系统的通知等等。

Service不是一个单独的进程,Service不是一个线程。

Service生命周期

Android Service的生命周期并不像Android中Activity那么复杂,因为它只继承了 onCreate(),onStart(),onDestroy()三个方法,当我们第一次启动Service时,先后调用了 onCreate(),onStart()这两个方法,当停止Service时,则执行onDestroy()方法,这里需要注意的是,如果 Service已经启动了,当我们再次启动Service时,不会在执行onCreate()方法,而是直接执行onStart()方法。

1.public IBinder onBind(Intent arg0) 将一个Service和一个Activity绑定

2.public void onCreate() 创建一个Service对象时调用

3.public int onStartCommand(Intent intent, int flags, int startId) 当启动或者重新启动对象时调用

4.public void onDestroy() 销毁一个Service对象时调用

Service需要在AndroidManifest.xml注册文件中注册

Java代码  

  1. <service android:name=".FirstService"></service>
  2. 卸载一个Activity
  3. Adb uninstall com.bjl.Activity25

1. Started Service中使用StartService()方法来进行方法的调用,调用者和服务之间没有联系,即使调用者退出了,服务依然在进行 【onCreate()-  >onStartCommand()->startService()->onDestroy()】,注意其中没有 onStart(),主要是被onStartCommand()方法给取代了,onStart方法不推荐使用了。

2. BindService中使用bindService()方法来绑定服务,调用者和绑定者绑在一起,调用者一旦退出服务也就终止了【onCreate()->onBind()->onUnbind()->onDestroy()】。

时间: 2024-08-03 10:45:29

Service的相关知识的相关文章

深入浅出安卓学习相关知识,如何从零学好移动开发

原文发表自我的个人主页,欢迎大家访问 http://purplesword.info/mobile-develop 由于近几年来互联网的飞速发展,安卓和iOS平台的大量普及推广,移动开发在当前是非常热门的一个方向. 有不少同学问我如何学习安卓,要学些什么,难不难学.之前一直没有想好应该怎么回答这个问题,只是简单的说安卓自身门槛不高,并不难学.因为我觉得准确回答一个类似这样的问题往往需要灵感.现在根据我的学习体验,做个大概的总结. 1.我为什么学安卓 我从刚开始接触安卓开发到现在也有两三年的时间了

ESB (Enterprise Service Bus)入门知识

本文主要介绍ESB相关的一些技术概念与术语,还有一些入门的需要了解的基础知识,并初步了解介绍一些ESB产品.由于本人刚接触ESB,所以将自己的学习内容与过程,记录下来!愿在这里与大家分享一下,共同进步与提高! [转载使用,请注明出处:http://blog.csdn.net/mahoking] EAI 企业应用集成(Enterprise Application Integration):是完成在组织内.外的各种异构系统.应用和数据源之间共享.交换信息.协作的途径,方法学,标准和技术. 所连接的应

进程和cpu的相关知识和简单调优方案

进程就是一段执行的程序,每当一个程序运行时,对于操作系统本身来说,就创建了一个进程,并且分配了对应的资源.进程可以分为3个类别: 1.交互式进程(I/O) 2.批处理进程 (CPU) 3.实时进程 (REAL-TIME) 对于交互式进程来说,一般其占用的cpu时间片很段,但是优先级偏高;批处理进程占用的cpu时间片很长,但是优先级偏底;实时进程是内核所使用的,其优先级高于前面两种. 上面说到了优先级,linux进程是具有优先级的,一般分为两种: 1.实时优先级 2.静态优先级 实时优先级的取值范

数据挖掘相关知识

因为最近在复习数据挖掘...故百度了解数据挖掘的相关知识... 什么是数据挖掘?? 数据挖掘(英语:Data mining),又译为资料探勘.数据采矿.它是数据库知识发现(英语:Knowledge-Discovery in Databases,简称:KDD)中的一个步骤.数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程.数据挖掘通常与计算机科学有关,并通过统计.在线分析处理.情报检索.机器学习.专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标. 为什么要进行数据挖掘

Apache(HTTP)服务相关知识总结(一)

Apache简介: Apache是一款著名的web服务器的软件.它是实现HTTP协议 的一个工具,而httpd则是Apache超文本传输协议服务器的主程序. 下面我来说说Apache的配置文件(非常重要) 1, 配置文件总体分为3个部分: Section1: Global Environment 功能: 控制Apache服务器进程的全局操作的 Section2:  'Main' server configuration 功能: 提供主服务器(默认为主服务器)的配置 Section3:  Virt

spring事务管理及相关知识

最近在项目中遇到了spring事务的注解及相关知识,突然间感觉自己对于这部分知识只停留在表面的理解层次上,于是乎花些时间上网搜索了一些文章,以及对于源码的解读,整理如下: 一.既然谈到事务,那就先搞清到底什么是事务,或者说,Spring事务管理中的事务到底是指什么? 1.事务(Transaction),通常是指数据库的事务,在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit),例如insert .update.delete等,事务是恢复和并发控制的基本单位. 2.事务

shell 脚本实战笔记(7)--集群网络相关知识和环境搭建

前言: 对网络相关的知识, 做下笔记. 包括IP地址A/B/C的分类, 静态地址的配置/DNS配置, 以及网卡相关信息查看. *) A/B/C/D类网络地址的划分 IP地址=网络地址+主机地址 或 IP地址=主机地址+子网地址+主机地址 IPv4的地址划分, 可以分为5种类型, A/B/C/D/E类 A类地址: 由1字节的网络地址和3字节主机地址组成, 网络地址最高位必须是"0", 地址范围从1.0.0.0到126.0.0.0. A类网络有126个, 每个网络能容纳1亿多个主机. B类

JSP一些相关知识

JSP代码虽然看起来更像web页面而不像servlet,但是JSP在运行时会被转换成servlet JSP到servlet的转换过程一般在出现第一次页面请求时进行.JSP页面包括普通HTML代码还有脚本,指令和动作 脚本用来嵌入Java代码,并将其转换成servlet的一部分.JSP指令用来控制servlet的结构.动作用来引入组件或者控制JSP引擎 JSP Expression: <%= expression%> 计算表达式 并把输出结果转换成字符串 HostName = <%=req

Linux系统的相关知识、常用命令及centos 7网卡配置

(本文仅为平时学习记录,若有错误请大佬指出,如果本文能帮到你那我也是很开心啦) 一.Linux系统的相关知识 1.Linux中根目录下所有文件夹的含义和用途(括号内为举例存放的文件) /  根目录 cd /  切换到根目录 / bin  存放可执行文件 /dev  存放设备文件  (网卡 CPU) /media  存放可移除设备文件   (U盘 CD/DVD  VMTools) /opt  存放第三方软件的默认位置 /tmp  存放临时文件  (日志文件) /root  root用户的家目录,主