- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android 移动开发基础教程(慕课版);第7章 Service;Service 也是 Android 的四大组件之一,是一个可以在后台长时间运行的组件。Service 可以由其他组件启动,而且即使用户切换到其他应用,Service 仍将在后台运行。Service 的功能和使用方法与 Activity比较类似,区别在于 Activity 需要向用户提供一个界面供交互,而 Service 在后台执行一些操作,如处理一些网络下载请求、后台播放音乐、文件读写等。;7.1 Service 简介;7.1.1 创建、配置 Service Service 的创建步骤和Activity一致,自定义的Service需要继承基类 Service,并且需要实现基类的若干方法,其中必须实现的方法是 onBind()方法 ,一些比较常见且重要的方法如表 7.1所示。;表 7.1 Service 中的常见方法;7.1.2 启动和停止 Service 启动 Service 通过调用 startService()方法实现,一旦 Service 被启动,可在后台无限期运行,即使启动该 Service 的组件已经被销毁。这种方式的 Service 通常用于执行比较单一且不需要将执行结果返回给调用者的任务。例如,网络下载或上传文件,操作完成之后会自行停止 Service。下面我们通过一个实例说明一下在 Activity 中启动 Service 的方法。;案例 7.1 启动和停止 Service 本例 Activity 中包含两个按钮,一个按钮用于启动 Service,另一个按钮用于停止 Service。 案例分析 在 DemoService 的每个方法中没有做具体的操作,只是打印了一条语句。单击 Activity 中的“启动”按钮,控制台日志打印如图 7.1 所示,回调了 Service 中的 onCreate()和 onStartCommand()方法。;图 7.1 启动 Service; 在Service已经启动的情况下单击“启动”按钮再次调用startService(),控制台打印如图7.2所示,说明每次调用startService方法都会回调onStartCommand()方法。; 单击 Activity 中的“停止”按钮调用 stopService()方法,控制台打印如图 7.3 所示,Service 已经停止,回调了 onDestroy()方法。;7.1.3 绑定 Service 调用 startService()之后,运行的 Service 和调用者之间基本不存在太大的关联。但有些时候需要允许 Service 和其他组件之间进行数据交换,例如手机音乐播放器在后台播放音乐,在 Activity 页面上需要知道当前播放的歌曲状态。这种情况可以通过将一个组件和 Service 进行绑定,绑?? Service通过调用 bindService(Intent service, ServiceConnection conn, int flags)实现,该方法包含 3 个参数,第 1 个参数 Service 指定需要绑定的 Service,第 3 个参数 flags 指定绑定时是否自动创建 Service,第 2 个参数是一个 ServiceConnection 对象,用于监听其他组件和 Service 之间的连接情况,不能为空。;案例 7.2 绑定和解绑 Service 本例仍然是在 Activity 中实现绑定 Service、获取信息和解绑 Service。;案例分析 本例在 Activity 中定义了 3 个按钮,分别用于绑定 Service、获取 Service 中数据、解绑 Service。 DemoService 中继承 Binder 类定义了一个内部类 MyBinder,用于对外提供方法访问 Service 中的数据,onBind()方法返回 MyBinder 类的一个对象。单击“绑定”按钮,控制台打印结果如图 7.4 所示,DemoService 回调了 onCreate()和 onBind()方法,Activity 和 Service 连接成功之后,ServiceConnection对象回调了 onServiceConnected()方法,Activity 在该方法中获取 MyBinder 对象。;图 7.4 绑定 Service; 单击“获取数据”按钮,控制台打印结果如图 7.5 所示,说明 Service 中的消息正确地传递到了 Activity 中。; 单击 Activity 中的“解绑”按钮,控制台打印结果如图 7.6 所示,Service 回
您可能关注的文档
- 0-3岁婴幼儿玩教具推荐及游戏指导 第五章.pptx
- Access 2010数据库应用技术第1章 数据库技术概论.ppt
- Access 2010数据库应用技术第2章 数据库与表.ppt
- Access 2010数据库应用技术第3章 查询.ppt
- Access 2010数据库应用技术第4章 SQL查询.ppt
- Access 2010数据库应用技术第5章 窗体.ppt
- Access 2010数据库应用技术第6章 报表.ppt
- Access 2010数据库应用技术第7章 宏.ppt
- Access 2010数据库应用技术第8章 模块与VBA程序设计.ppt
- Access 2010数据库应用技术第9章 数据库的管理与安全.ppt
- 浙江省温州市浙南名校联盟2025-2026学年高一上学期期中联考数学试题含解析.docx
- 26高考数学提分秘诀重难点34圆锥曲线中的定点、定值、定直线问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点35概率与统计的综合问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点31圆锥曲线中的切线与切点弦问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点30圆锥曲线中的弦长问题与长度和、差、商、积问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点29巧解圆锥曲线的离心率问题(举一反三专项训练)(全国通用)(含解析).docx
- 26高考数学提分秘诀重难点28直线与圆的综合(举一反三专项训练)(全国通用)(含解析).docx
- 寡核苷酸药物重复给药毒性研究技术指南.docx
- 重组溶瘤腺病毒生产质量管理标准.docx
- 26高考数学提分秘诀重难点27直线与圆中常考的最值与范围问题(举一反三专项训练)(全国通用)(含解析).docx
有哪些信誉好的足球投注网站
文档评论(0)