Android移动开发基础第7章 Service.pptx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Android开发基础知识入门第7章 Service7.1 Service简介 7.2 Service的生命周期7.3 跨进程调用ServiceAndroid开发基础知识入门第7章 Service7.1 Service简介 Service简介 Service也是Android四大组件之一,是一个可以在后台长时间运行的组件。 Service可以由其他组件启动,而且即使用户切换到其他应用,Service仍将在后台运行。 Service的功能和使用方法与Activity比较类似,区别在于Activity需要向用户提供一个界面供交互,而Service相似后台执行一些操作,如处理一些网络下载请求、后台播放音乐、文件读写等。Android开发基础知识入门第7章 Service7.1 Service简介 创建Service Service的创建步骤和Activity一致,自定义的Service需要继承基类Service,并且需要实现基类的若干方法,其中必须实现的方法是onBind()方法。方法名方法说明IBinder onBind(Intent intent)该方法返回一个IBinder对象,用于其他组件和Service通信,子类必须实现该方法void onCreate()Service第一次创建时会回调该方法int onStartCommand()每次调用startService(Intent)启动Service时都会回调该方法boolean onUnbind(Intent intent)当Service上绑定的所有组件都解绑时会回调该方法void onDestroy()Service被销毁时会回调该方法Android开发基础知识入门第7章 Service7.1 Service简介 配置Service 和Activity一样,Service在创建完成之后,还需要在AndroidManifest.xml文件中对Service进行配置,否则系统找不到定义的Service。Service的配置方法是在manifest文件的application/元素中增加一个service/元素。service android:name=com.demo.service.DemoService intent-filter action android:name=com.demo.demoservice/ /intent-filter/serviceAndroid开发基础知识入门第7章 Service7.1 Service简介 启动和停止service 启动Service通过调用startService()方法实现,一旦Service被启动,可在后台无限期运行,即使启动该Service的组件已经被销毁。 这种方式的Service通常用于执行比较单一且不需要将执行结果返回给调用者的任务。 例如,网络下载或上传文件,操作完成之后会自行停止Service。Android开发基础知识入门第7章 Service7.1 Service简介 绑定Service 绑定Service通过调用bindService(Intent service, ServiceConnection conn, int flags)实现,该方法包含三个参数,第一个参数Service指定需要绑定的Service,第三个参数flags指定绑定时是否自动创建Service,第二个参数是一个ServiceConnection对象,用于监听其他组件和Service之间的连接情况,不能为空。 绑定Service的使用场景是允许Service和其他组件之间进行数据交换,例如手机音乐播放器在后台播放音乐,在Activity页面上需要知道当前播放的歌曲状态。Android开发基础知识入门第7章 Service7.2 Service的生命周期 Service生命周期 Android开发基础知识入门第7章 Service7.3 跨进程调用Service 创建Service和AIDL接口 跨进程绑定Service与之前在同一个应用内调用bindService()类似,onBind()方法返回一个IBinder对象,在ServiceConnection对象的onServiceConnection()方法中获取IBinder对象,通过IBinder对象实现通信。 只不过跨进程时,需要通过AIDL处理IBinder对象的传递和获取。AIDL的定义和JAVA接口的定义类似,区别在于AIDL文件以.aidl结尾。package com.demo.aidl.service; interface IStu{String getStuNo();String getStuName();}Android开发基础知识入门第7章 Servi

文档评论(0)

132****9295 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档