`
火神曲
  • 浏览: 31761 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

【6.8】Service的一点理解

阅读更多

与Activity不同,Service 自启动,运行在后台,不能与用户交互,退出应用时,Service还能运行。如MP3播放

 

Service的生命周期:onCreate -> onStart -> onDestroy (其中Service在onDestroy之前,onCreate只执行一次,onStart可以执行多次)

 

步骤:

 

1)创建一个Service类继承自Service,其中有onCreate(),onStart(Intent intent, int startId),onDestroy(),onBind()四个方法可以重写,其中onBind()一定要重写

 

2)在AndroidManifest.xml中注册Service,其中android:name要和创建的Service完全一致

 

3)开始服务:startService(intent);结束服务:stopService(intent)

 

 

绑定Service和Activity

 

假如没有结束服务的话,Service会一直运行直至关机,所以绑定可以使Activity在onStop时同时销毁Service

 

绑定的Service的生命周期:onCreate -> onBind -> onUnbind -> ondestroy

 

 

MyService类中定义了一个MyBinder类,该类实际上是为了获得MyService的对象实例的。在ServiceConnection接口onServiceConnected方法中的第2个参数是一个IBinder类型的变量,将该参数转换成MyService.MyBinder对象,并使用MyBinder类中的getService方法获得MyService对象。在获得MyService对象后,就可以在Activity中随意操作MyService类了

 

 

注意事项

 

1)两者请不要混用,否则容易出现Service没被Destroy的情况。

 

如startService后再bindService,此时退出Activity之后unbindService,不会destroy

 

2)确保有bindService就有unBindService(绑定的会在退出时自动unbind),有startService就有stopService

分享到:
评论

相关推荐

    KEPServerEXV6.8.zip

    KEPServerEXV6.8

    IDA 6.8.rar

    **IDA 6.8:强大的反汇编器与调试器** IDA(Interactive Disassembler Pro)是一款广泛应用于逆向工程的工具,它以其强大的反汇编能力、图形化界面和高级调试功能闻名于世。IDA 6.8是该系列的一个重要版本,它在6.x...

    给力 ce6.8

    由于是VIP会员专享,可能还附带了一些教程、插件或者其他附加资源,帮助用户更好地理解和使用这个工具。 对于初学者来说,使用Cheat Engine需要了解一些基本概念,如内存地址、数据类型和扫描类型。内存扫描是CE的...

    极品五笔_6.8

    极品五笔_6.8极品五笔_6.8极品五笔_6.8

    动易cms6.8源码

    分析动易CMS6.8的源码可以帮助开发者深入理解其架构和设计模式,学习如何构建高效、可扩展的CMS系统。源码中可能包含系统核心类库、数据库访问层、业务逻辑层、视图层等多个部分,每个部分都有其特定的职责和设计...

    redhat Linux 6.8

    redhat Linux 6.8 64位操作系统 测试有用 redhat Linux 6.8 64位操作系统 测试有用

    CentOS6.8-64-百度云盘链接

    CentOS6.8-64-百度云盘链接

    vxworks 6.8帮助文档

    这个“VxWorks 6.8帮助文档”包含了关于该系统全面的信息,旨在帮助开发者理解和掌握VxWorks 6.8的各个层面。在压缩包中的“docs”文件夹很可能是包含了一系列的PDF文档,涵盖了从系统安装、配置到编程接口、设备...

    Centos6.8安装RabbitMQ

    Centos 6.8安装RabbitMQ ,自己理解的,希望能够帮助大家。

    elasticsearch-6.8.18.rar(elasticsearch-6.8.18.zip)

    Elasticsearch是一个强大的开源搜索引擎,基于Apache Lucene构建,它为开发者和数据分析师提供了高效、可扩展、实时的搜索和分析功能。...通过深入理解和充分利用其特性,我们可以构建高效、可靠的数据解决方案。

    citavi 6.8文献管理

    这些笔记可以链接到相应的文献,形成一个完整的信息库,有助于深入理解和分析文献内容。 4. **引用管理**:Citavi内置了丰富的引用样式,如APA、MLA、Chicago等,用户可以轻松地按照所需格式插入引用和参考文献。...

    vxworks6.8 vmware bsp

    VxWorks 6.8是Wind River Systems公司开发的一款实时操作系统(RTOS),广泛应用于嵌入式系统中。VMware BSP(Board Support Package)是针对特定硬件平台的软件组件集合,它使得VxWorks能够在虚拟化环境中如VMware...

    西瓜书6.8代码.zip

    西瓜书6.8代码.zip

    IDA6.8工具包

    IDA sdk 6.8版本,方便大家使用

    gradle-6.8-all.zip

    《Gradle 6.8:Android开发中的构建神器》 Gradle是一款强大的自动化构建工具,尤其在Android开发中,它的身影无处不在。Gradle以其灵活性、可扩展性和高效的构建性能,深受开发者喜爱。当我们谈论“gradle-6.8-all...

    VxWorks6.8安装指南

    包含VxWork6.8 + WorkBench3.2 +FTP的VxWorks安装方法,除了文档以外包含文档中所述的一切相关文件,除了WorkBench安装所需iso文件,包括DDS622.img,BSP需要修改和添加的文件以及无需编译的完成版bootrom与VxWorks...

    最新版windows gradle-6.8-bin.zip

    《Windows环境下Gradle 6.8的安装与使用详解》 Gradle,作为一个强大的构建自动化工具,被广泛应用于Java、Android以及其他多种语言的项目中。本文将详细介绍如何在Windows操作系统上安装并使用最新版的Gradle 6.8...

    视频解码器DivX_6.8.4.1

    解码器的主要工作是将DivX编码的数据转换成计算机可以理解的原始视频信号,这样显示设备就能正确显示视频内容。 视频解码器的重要性在于其兼容性和效率。一个优秀的解码器应该能够处理多种编码格式,同时保证解码...

    centos 6.8 搭建LAMP

    ### CentOS 6.8 搭建 LAMP 环境及配置 #### 一、简介 LAMP 是一个开放源代码的Web平台,由 Linux、Apache、MySQL 和 PHP 四个部分组成,广泛用于互联网应用程序开发。本文将详细介绍如何在 CentOS 6.8 系统上搭建 ...

    Reflector 6.8.2.5

    Reflector 6.8.2.5,最后的免费版本,不强制升级

Global site tag (gtag.js) - Google Analytics