- 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 手机开发 第13章 Service BroadcastReceiver Service BroadcastReceiver 理解Service组件的作用及使用方法 启动、停止Service 绑定本地Service并与之通信 Service的生命周期 TelephonyManager, 监听手机电话 SmsManager,监听手机短信 AudioManager, 管理手机音量 VibratorManager, 管理手机震动 AlarmManager,管理手机闹钟 BroadcastReceiver组件的作用和使用 发送广播,接收系统广播 Service简介 与Activity相似,代表可执行的应用程序 需要从Service类派生出子类 Service具有自己的生命周期 Service也需要在manifest.xml文件中注册 Service 也是由Context类派生出来 Service在后台运行,没有用户界面 创建Service 的步骤: 实现Service类的子类 在manifest.xml中注册Service组件 创建、配置Service 继承Service类,复写其生命周期函数 void onCreate( ) : 创建Service后回调该方法 void onStartCommand(Intent intent, int flags, int startId): 通过startService()启动Service时都会回调该方法 void onDestroy( ) : 当Service 被关闭之前 abstract IBinder onBind( ) boolean onUnbind( ) 启动与停止服务 启动Service // 显式 Intent intent=new Intent(this, oneService.class); // 隐式 //Intent intent=new Intent(); //Intent.setAction(someAction); startService(intent); 停止Service stopService(Intent) stopSelf(id) 继承IntentService类 因为多数启动服务不必同时处理多个请求(在多线程情境下会很危险),所以使用IntentService类实现服务是非常好的选择。IntentService完成如下任务: 创建区别于应用程序主线程的默认工作线程来执行发送到onStartCommand()方法的全部Intent; 创建工作队列每次传递一个Intent到onHandleIntent()方法实现,这样就不必担心多线程; 所有启动请求处理完毕后停止服务,这样就不必调用stopSelf()方法; 提供onBind()方法默认实现,其返回值是null; 提供onStartCommand()方法默认实现,它先发送Intent到工作队列然后到onHandleIntent()方法实现。 绑定本地Service并与之通信 bindService(Intent intent, ServiceConnection conn, int flags) ServiceConnection 接口 onServiceConnected(ComponentName name, IBinder binder) onServiceDisconnected(ComponentName name) unbindService(ServiceConnection conn) Service生命周期 启动Service 绑定Service 跨进程调用Service (AIDL) 在不同应用之间传递对象的接口语言 假设A应用要调用B应用的download (String path)方法 B应用以Service的方式向A应用提供服务 完成AIDL需要四个步骤 跨进程调用Service (AIDL) 步骤一: 在B应用中创建*.aidl 文件,定义接口类: Package eg.service.B; interface IDownload { void download(String path); } 跨进程调用Service (AIDL) 步骤二: 在B应用中实现*.aidl 文件生成的接口: private IDownload.Stub binder=new IDownload.Stub() { @Override public void download(String path) throws RemoteException { // TODO Auto
您可能关注的文档
- 2014专业技术人员继续教育班在线考试2答案教程.doc
- 2014专业技术人员继续教育复习教程.doc
- 2015.11.18以按劳分配为主体多种分配方式并存教程.ppt
- 2015-2016高中物理2.6-2.7走进门电路了解集成电路粤教版选修3-1教程.ppt
- 2015—2016学年第一学期如皋市高三年级期中联考计算机专业试卷教程.doc
- 2015-2016学年高中化学1.3生活垃圾的分类处理苏教版选修1教程.ppt
- 2015-2016学年高中化学3.3高分子材料和复合材料苏教版选修1教程.ppt
- 2015-2016学年高中生物专题1第3节基因工程的应用新人教版选修3教程.ppt
- 2015-2016学年高中生物专题1第4节蛋白质工程的崛起新人教版选修3教程.ppt
- 2015-2016一轮复习第四课我国政府受人民的监督教程.ppt
最近下载
- 钢筋混凝土工程劳务分包合同.docx VIP
- 通用简约报价单模板.docx VIP
- 医学生职业生涯规划.pdf VIP
- 名校联考作文汇编六(2025年10月考)-2026年高考语文作文热点新闻素材讲练(全国通用).docx
- 家居建材供应链一体化服务规程.pptx
- 保健食品中茶氨酸的测定.pdf VIP
- 北师大版七年级数学上册 3.4 《合并同类项》及反思(教案).doc VIP
- 基于保持建筑正常使用功能的抗震技术导则RISN-TG046-2023.docx VIP
- 量子化学的建立与发展-11.ppt VIP
- 第五单元作文:插上科学的翅膀飞-写作指导+范文赏析+病文升格(教案)-2022-2023学年六年级语文下册单元作文素材积累(部编) .docx VIP
原创力文档


文档评论(0)