android os;异步消息处理机制:AsyncTask和Handler
来源:互联网 发布:世音琴行 淘宝 编辑:程序博客网 时间:2024/03/29 18:57
android os:
为设备提供基础的操作系统服务,消息传递,和内部进程通信。
Classes:
- AsyncTask<Params,Progress,Result>:异步任务,UI线程。
- BatteryManager:ACTION_BATTERY_CHANGED Intent。
- Binder:远程对象的基类,一种轻量级远程程序调用机制的核心部分,由IBinder定义。
- Build:current build的信息,从系统特性中提取。
- Build.VERSION:
- Build.VERSION_CODES:
- Bundle:字符串值和不同打包类型的映射。
- CancellationSignal:提供取消进程中操作的能力。
- ConditionVariable:实现条件变量的锁定实例。
- CountDownTimer:倒计时,沿途定期通知。
- Debug:提供各种Android应用程序的调试方法,包括各种和分配数。
- Debug.InstructionCount:搜集和查询指令数的API。
- Debug.MemoryInfo:用于检索各种统计有关该进程的内存映射。
- DropBoxManager:队列数据块。
- DropBoxManager.Entry:单一接口用于从drop box恢复。
- Environment:提供访问环境变量。
- FileObserver:监视文件在文件被设备上任何进程访问或改变后开始一事件。
- Handler:允许你发送和处理消息,追寻与进程队列关联的对象。
- HandlerThread:开始一个拥有Looper的新线程。
- Looper:用于运行一个线程的消息循环。
- MemoryFile:为Linux驱动程序包装
- Message:定义包含任意数据和描述对象的消息,可以被发送到Handler。
- MessageQueue:低等级的类消息队列,被Looper派遣。
- Messager:引用Handler,其他程序可以使用Handler发送消息给它。
- Parcel:消息容器,可通过IBinder发送。
- ParcelFileDescripter:readFileDescriptor()返回,允许你在处理它后关闭它。
- ParcelFileDescriptor.AutoCloseInputStream:
- ParcelFileDescriptor.AutoCloseOutputStream:
- PatternMatcher:一种简单的匹配模式,使使用不受信任的数据安全,不提供完整的注册接口支持,只是不能被恶意使用的简单通配符
- PowerManager:管理设备供电状态。
- PowerManager.WakeLock:唤醒锁机制预测你的应用是否需要设备唤醒。
- Process:管理操作系统的进程的工具。
- RecoverySystem:恢复系统包含android恢复系统的相互方法。
- RemoteCallbackList<E extends IInterface>:负责维护一个远程接口列表的繁重工作,常用于执行从服务器到客户端的回调。
- ResultReceiver:普通接口用于从某处接收返回结果。创造子类并实例化,通过IPC发送给其他人,接收别人send的结果。
- StatFs:回复文件系统空间的所有信息。
- StrictMode:开发者工具用于侦测偶然发生事件,并使你能专注处理它。
- SystemClock:核心计数设备。
- TokenWatcher:辅助类,帮你使用IBinder对象,作为引用计数的标志。
- Trace:写入跟踪事件到系统跟踪缓冲区。
- UserHandle:在设备上代表一个用户。
- UserManager:在一个多用户系统管理用户和用户的详细资料。
- Vibrator:操作震动。
- WorkSource:
异步消息处理机制:
AsyncTask:允许后台操作和发布UI线程结果。轻量级,简单,过程可控。
三个泛型类型AsyncTask<Params,Progress,Result>
- Params:启动任务时的输入参数
- Progress:后台运算期间发布,后台任务执行的百分比
- Result:后台运算的最终结果
四步:onPreExecute,doBackground,onProgressUpdate,onPostExecute
- onPreExecute():在任务执行之前调用。用于设置任务,执行后台任务前对UI标记。
- doInBackground():执行onPreExecute()后立即调用后台,这一步用于进行后台运算,可进行需要很长时间的操作。异步任务的参数传递到这一步。运算结果必须在这一步返回,将会传递回来在下一步。也可使用publishProgress()更新调用onProgressUpdate()更新UI。
- onProgressUpdate():将信息更新到UI组件上,在UI线程中执行。
- onPostExecute():后台运算结束后调用此方法。后台运算的结果作为参数传递给这一步。
rules:
- 必须在UI线程中加载
- 必须在UI线程中创建任务实例
- execute()必须在UI线程调用
- 任务只能执行一次
- 不要手动调用四步
Handler:允许你发送和处理消息,追寻与进程队列关联的对象。
应用程序启动时,android首先开启一个主线程,主线程管理界面中的UI控件,进行事件分发,更新UI只能在主线程中更新。Handler运行在主线程中,与子线程可以通过Message对象传递数据,Handler接受子线程传递的Message对象,将Message放入主线程队列中,配合主线程更新UI。
Looper管理消息队列,调用Looper()方法,进入无限循环,当消息队列存在一条消息时,取出处理,每个线程有一个Looper和一个MessageQueue。
0 0
- android os;异步消息处理机制:AsyncTask和Handler
- 异步消息处理机制-Handler、AsyncTask
- Handler Message 消息机制和AsyncTask异步处理android数据交互
- Handler Message 消息机制和AsyncTask异步处理android数据交互
- AsyncTask和Handler处理异步消息
- Android之异步处理Handler和消息机制处理
- Android AsyncTask异步处理消息机制
- Android笔记----AsyncTask异步消息处理机制
- Android异步消息处理机制 handler
- Android Handler 异步消息处理机制
- 关于 Android 异步消息处理机制 Handler
- Android异步消息处理机制Handler
- Android基础:异步消息处理机制Handler
- Android中AsyncTask(异步任务)和Handler(线程消息机制)的详解
- AsyncTask异步消息处理机制
- AsyncTask 异步消息处理机制
- Handler--异步消息处理机制
- Android异步消息处理机制之handler机制
- LeetCode 032 Longest Valid Parentheses
- [学习笔记]spring实战-征服数据库
- 增删改查语句
- 在ubuntu中配置SSH(解决connect to host localhost port 22: Connection refused问题)
- String的一些用法
- android os;异步消息处理机制:AsyncTask和Handler
- Android四大组件之service(一)——简介
- 【C语言】使用snprintf传递缓存信息时,需要注意的关键点
- 在eclipse SDK中配置Java EE的WEB开发环境
- CF 205 C Little Elephant and Interval(模拟)
- 扩频信号的相关接收
- 黑马程序员——Object-C基础(十一)Foundation之结构体、字符串
- 反汇编之流程控制语句的识别(if语句)
- Git教程参考