12.Android学习之Service应用(一)

您所在的位置:网站首页 mservice什么意思 12.Android学习之Service应用(一)

12.Android学习之Service应用(一)

2024-07-10 22:51:09| 来源: 网络整理| 查看: 265

目录

12.Service应用(一)

1.Service概述

1-1.Service 的分类

1-2.Service的生命周期

2.Service 的基本用法

2-1.创建与配置Service

2-2.启动和停止Service

12.Service应用(一) 1.Service概述

Service (服务)是能够在后台长时间运行,并且不提供用户界面的应用程序组件。其他应用程序组件能启动Service,并且即便用户切换到另一个应用程序,Service 还可以在后台运行。此外,组件能够绑定到Service并与之交互,甚至执行进程间通信(IPC)。例如,Service 能在后台处理网络事务、播放音乐、执行文件操作或者与Content Provider通信。

1-1.Service 的分类

Service按照启动方式可以分为以下两种类型。

◆Started Service:当应用程序组件(如Activity)通过调用startService() 方法启动Service时,Service处于启动状态。一旦启动, Service 能在后台无限期运行。

◆Bound Service:当应用程序组件通过调用bindService()方法绑定到Service时,Service处于绑定状态。多个组件可以同时绑定到一个Service 上,当它们都解除绑定时,Service 被销毁。

Started Service与Bound Service的区别如表12.1所示。

表12.1 Started Service与Bound Service的区别

Started Service Bound Service 使用startService()方法启动 调用bindService()方法绑定 通常只启动,不返回值 发送请求,得到返回值 启动Service的组件与Service之间没有关联,即使关闭该组件,Service也会一直运行 启动Service的组件与Service绑定在一起, 如果关闭该组件,Service就会停止运行。 回调onStartCommand()方法,允许组件启动Service 目调onBind()方法,允许组件绑定Service

注:Service可以同时属于这两种类型,既可以启动(无限期运行)又能绑定。不管应用程序是否为启动状态、绑定状态或者两者兼有,都能通过Intent对象使用Service,就像使用Activity那样。然而,开发人员可以在配置文件中将Service声明为私有的,从而阻止其他应用程序访问。

1-2.Service的生命周期

Service的生命周期比Activity简单很多,但是却需要开发人员更加关注Service如何创建和销毁,因为Service可能在用户不知情的情况下在后台运行。

Service的生命周期可以分成两个不同的路径:

◆通过startService()方法启动Service

当其他组件调用startService()方法时,Service 被创建,并且无限期运行,其自身必须调用stopSelf()方法或者其他组件调用stopService()方法来停止Service。当Service停止时,系统将其销毁。

◆通过bindService()方法启动Service

当其他组件调用bindService()方法时,Service 被创建,接着客户端通过IBinder接口与Service通信,客户端通过unbindService()方法关闭连接。多个客户端能绑定到同一个Service,并且当它们都解绑定时,系统销毁Service (Service 不需要被停止)。

这两条路径并非完全独立,即开发人员可以绑定已经使用startService()方法启动的Service。例如,后台音乐Service能使用包含音乐信息的Intent 通过调用startService()方法启动。当用户需要控制播放器或者获得当前音乐信息时,可以调用bindService()方法绑定Activity到Service。此时,只有stopService()和stopSelf()方法全部被客户端解绑定时才能停止Service。

为了创建Service,开发人员需要创建Service类或其子类的子类。在实现类中,需要重写一些处理Service生命周期重要方面的回调方法,并根据需要提供组件绑定到Service的机制。需要重写的重要回调方法如表12.2所示。

方法名 描述 <


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭