版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
多线程消息处理Android汇报人:XXX目录1234Handler消息处理AsyncTaskIntentService案例实现01章节PARTHandler消息处理添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字Handler运行在主线程中(UI线程中),它与子线程可以通过Message对象来传递数据,此时Handler就承担着接受子线程传过来的Message对象,把这些消息放入主线程队列中,配合主线程进行UI更新。(1)
循环者LooperLooper对象用来为一个线程开启一个消息循环,用来操作MessageQueue。(2)HandlerHandler可以分发Message对象和Runnable对象到其所在线程的MessageQueue中,每个Handler实例都会绑定到创建他的线程中(一般是位于主线程)(3)MessageMessage是线程之间传递信息的载体,包含了对消息的描述和任意的数据对象。Handler消息处理表7-1Looper类的常用方法方法描述prepare()用于初始化Looperloop()Looper开始真正工作,可从消息队列中获取消息和处理消息myLooper()获取当前线程的Looper对象getThread()获取Looper对象所属的线程quit()用于结束Looper循环02章节PARTAsyncTask添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字
AsyncTask是Android中用于在后台线程上执行短时间运行的操作然后将结果发布回UI线程的工具。1)onPreExecute():在执行任务之前在UI线程上调用。此方法通常用于设置任务。2)doInBackground():在onPreExecute()完成后立即在后台线程上调用。3)onProgressUpdate():在调用publishProgress()后在UI线程上自动执行。4)onPostExecute(Result):在后台计算完成后在UI线程上执行。5)onCancelled():任务取消时调用的方法。AsyncTaskclassMyTaskextendsAsyncTask<Void,Integer,Void>{//在后台任务开始前执行@OverrideprotectedvoidonPreExecute(){//初始化操作}//在后台线程执行任务@OverrideprotectedVoiddoInBackground(Voidparams){for(inti=0;i<=100;i++){//发布进度更新,每发布一次,onPostExecute()执行一次publishProgress(i);//模拟耗时操作try{Thread.sleep(100);}catch(InterruptedExceptione){//处理中断异常}}returnnull;}//在后台任务完成后执行@OverrideprotectedvoidonPostExecute(Voidresult){//最终操作}//在后台任务执行过程中更新UI@OverrideprotectedvoidonProgressUpdate(Integervalues){//使用values[0]更新UI}}//在主线程的某个地方启动AsyncTasknewMyTask().execute();03章节PARTIntentService添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字
IntentService是Service的子类,它每次使用一个工作线程来处理全部启动请求。仅需要实现onHandleIntent()方法,它接收每次启动请求的Intent以便完成后台任务。
生成一个默认的且与主线程互相独立的工作者线程来执行所有传送至onStartCommand()方法的Intetnt
生成一个工作队列来传送Intent对象给onHandleIntent()方法,同一时刻只传送一个Intent对象,不必处理多线程的问题。
在所有的请求(Intent)都被执行完以后会自动停止服务,所以,不需要调用stopSelf()方法来停止该服务
提供了一个onBind()方法的默认实现,返回null
提供了一个onStartCommand()方法的默认实现,它将Intent先传送至工作队列,然后从工作队列中每次取出一个传送至onHandleIntent()方法,在该方法中对Intent作相应的处理IntentService04章节PART案例实现添加相关标题文字添加相关标题文字添加相关标题文字添加相关标题文字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学生宪法知识竞赛试题及答案
- 2026福建航信龙岩分公司招聘客户经理笔试历年难易错考点试卷带答案解析
- 2026福建福州宏诚工程建设监理有限公司社会招聘4人笔试历年典型考点题库附带答案详解
- 2026福建省盐业集团有限责任公司招聘13人笔试历年典型考点题库附带答案详解
- 2026福建省中国武夷实业股份有限公司国际事业部招聘笔试历年难易错考点试卷带答案解析
- 2026福建漳州信息产业集团有限公司招聘24人笔试历年备考题库附带答案详解
- 2026浙江杭州杭铁运营管理(德清)有限公司招聘640人笔试历年典型考点题库附带答案详解
- 2026江苏苏州数智科技集团有限公司下属企业招聘18人(第六批)笔试历年常考点试题专练附带答案详解
- 2026广东北晟建设投资集团有限公司属下二三级公司及控股公司工作人员招聘14人笔试历年典型考点题库附带答案详解
- 2026年云南省交通投资建设集团有限公司管理人员校园招聘84人笔试历年难易错考点试卷带答案解析
- 2025至2030中国放疗设备行业项目调研及市场前景预测评估报告
- DBJT15-245-2022 广东省城市轨道交通工程设计规范
- 江苏省扬州市仪征市2024-2025学年八年级下学期期末考试数学试卷(含答案)
- 江苏都桐科技有限公司新建锂离子电池用再生黑粉生产及再生磷酸铁锂测试电芯研发项目环评资料环境影响
- 2025年河北省中考英语真题 【含答案、解析】
- 七年级下册地理知识点总结(考点清单)(背记版)七年级地理下学期期末复习(人教2024版)
- 高中历史(统编版)知识提纲(选必修全册详细版)
- 城镇排水管道原位热塑成型法修复工程技术规程
- 包装车间质量培训
- 2024年中国院内外药品市场销售分析报告-医药魔方
- 2024-2025学年重庆市高一上学期期末联合检测历史试题(解析版)
评论
0/150
提交评论