- 117
- 0
- 约1.64万字
- 约 40页
- 2018-12-21 发布于福建
- 举报
7Ser欣悦vice
第7章 Service服务 教学目标 理解使用Service(服务)的时机。 掌握服务Service(服务)的生命周期(Lifecycle) 掌握创建和控制服务Service(服务) Android中的Service Service是android四大组件中与Activity最相似的组件,它们都代表可执行的程序。 Android Service服务的最主要特点在于Service一直在后台运行,而没有实际的用户界面。 一般使用Service为应用程序提供一些服务,或不需要界面的功能,如从internet下载文件、控制播放器等。 Service(服务)的生命周期 Service与Activity一样,有一个从启动到销毁的过程,但Service的这个过程要比Activity的简单。 Service启动到销毁的过程只会经历三个阶段:创建服、开始服务、销毁服务。 一个服务实际上是继承android.app.Service的类,当服务经历了上面三个阶段后,分别调用Service类中的3个事件方法进行交互,即: onCreate():Service的生命周期开始,完成Service的初始化工作 onStartCommand() :活动生命周期开始,但没有与之对应的“停止”函数,因此可以近似认为活动生命周期也是以onDestroy()标志结束 onDestroy():Service的生命周期结束,释放Service所有占用的资源 一个服务只会创建一次、销毁一次,但可以开始多次。因此, onCreate()、 onDestroy()方法只可以被调用一次,而onStartCommand()方法可以调用多次。 Service(服务)的生命周期 Service的状态 Service有两种状态,“启动的”和“绑定” 通过startService()启动的服务处于“启动的”状态,一旦启动,service就在后台运行,即使启动它的应用组件已经被销毁了。通常started状态的service执行单任务并且不反回任何结果给启动者。比如当下载或上传一个文件,当这项操作完成时,service应该停止它本身。 还有一种“绑定”状态的service,通过调用bindService()来启动,一个绑定的service提供一个允许组件与service交互的接口,可以发送请求、获取返回结果,还可以通过夸进程通信来交互(IPC)。绑定的service只有当应用组件绑定后才能运行,多个组件可以绑定一个service,当调用unbind()方法时,这个service就会被销毁了。 创建Service(服务) 开发service需要两个步骤: 自定义一个类继承自android.app.Service类 在配置文件中注册 service android:enabled=”true” android:name=”.SimpleService”/service 其中android:enabled为”true”,表示Service服务处于激活状态,虽然Service是激活的,但系统仍然不会启动Service,要启动该服务,必须显示地调用startService方法,如果想停止服务,需要显示地调用stopService方法。 Service服务实例 自定义一个类继承自android.app.Service类 Service服务实例 在配置文件中注册 启动和停止服务 使用startService 调用服务: 这种方式启动会执行服务的onCreate()和onStartCommand ()方法 绑定本地service并与之通信 程序通过startService()和stopService()启动、关闭Service时, Service与访问者之间基本上不存在太多的关联,因此Service和访问者之间无法通信、数据交换。另外,如果启动服务后,并未调用stopService来停止服务,这个服务就会随着系统的启动而启动,随着android系统的关闭而关闭,也就是服务会在android系统启动后一直在后台运行,直到android系统关闭才停止,但有时我们希望在启动服务的Activity关闭后服务就自动关闭,这就需要将Activity和Service绑定。 通过bindService()方法可以实现绑定,通过unbindService()方法则可以解除绑定。 绑定本地service并与之通信 绑定本地Service时,该类必须提供一个IBinder onBind(Intent intent)方法,在绑定本地Service的情况下, onBind(Intent intent)方法所返回的IBinder 对象将会传给ServiceConnection对象里onS
您可能关注的文档
最近下载
- 2024-2025学年上海市普陀区六年级下学期数学期末试题含详解.pdf VIP
- 制造业企业员工高离职率分析.pdf VIP
- GB50461-2024:石油化工静设备安装工程施工质量验收规范.pptx VIP
- 三江A116火灾报警控制器简易操作规程.docx
- (新版)社会体育指导员理论知识考试题库(含答案).docx VIP
- DB31T 1104-2018 城市轨道交通导向标识系统设计规范.docx VIP
- 2023年浙江省军队转业干部录用考试试题.docx VIP
- 口渴了-朋友帮你.ppt VIP
- Xikong西莱克低温机控制板SHXK814用户手册.pdf
- 爱迪生牛顿大发明攻略.doc VIP
原创力文档

文档评论(0)