本月博客排行
-
第1名
龙儿筝 -
第2名
johnsmith9th -
第3名
wy_19921005 - zysnba
- sgqt
- lemonhandsome
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- qepwqnp
- e_e
- 解宜然
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- gaojingsong
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- sichunli_030
- xyuma
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- lzyfn123
- zhanjia
- forestqqqq
- johnsmith9th
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- lich0079
- kristy_yy
最新文章列表
Android Looper Hander和MessageQueue的关系
使用Handler和Thread是Android进行线程间通信的主要方式。具体方式是,在异步线程中,使用handler发送Message到指定队列(handler.sendMessage(Message msg))。目标队列接收消息后,将消息添加到队列中,Looper轮询队列,依次对异步线程发送过来的Message进行处理,下面结合Android源码详述。
先看Han ...
Android中的Looper,Handler及HandlerThread简析
Can’t create handler inside thread that has not called Looper.prepare()
毕业后在深圳一家公司工作,目前公司在做的是与android相关的项目,有Android源码。
这几周,出现几次同事在使用Handler的时候,在调用时抛出RuntimeException的错误,异常消息如下:Can’t create handler in ...
Android的日期类及Handler的使用
在此处可完全不用Handler,只是了解用法,Handler是为了解决android的多线程问题--Android平台下不允许新启动的线程访问该Activity里面的组件,这样会导致新启动的线程无法动态改变界面组件中的属性值,这就需要Handler的消息传递机制来解决了。
--》1.在新启动的线程中发送消息。(当然啦,这里并非新启动的线程)
Message msg = new ...
[转载][Android实例] Handler+ExecutorService(线程池)+MessageQueue模式+缓存模式
Handler+Runnable模式
我们先看一个并不是异步线程加载的例子,使用 Handler+Runnable模式。
这里为何不是新开线程的原因请参看这篇文章:Android Runnable 运行在那个线程 这里的代码其实是在UI 主线程中下载图片的,而不是新开线程。
我们运行下面代码时,会发现他其实是阻塞了整个界面的显示,需要所有图片都加载完成后,才能显示界面
package ...
[转载]android的消息处理机制(图+源码分析)——Looper,Handler,Message
转载自http://www.cnblogs.com/codingmyworld/archive/2011/09/12/2174255.html
作为一个大三的预备程序员,我学习android的一大乐趣是可以通过源码学习google大牛们 ...
Android三种实现定时器的方法
方法一:Handler+Thread
package com.xunfang.handerDemo;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.TextView;
...
使用Handler(嵌入Jetty学习二)
一个Jetty Server可以看成由一下几部分组成,其中Connector负责接收客户端的HTTP请求,请求的处理是由Handler来完成的。在上一个例子中HelloHandler的作用就是处理用户请求,并输出结果。
Handler在Jetty中是一个非常重要的东西,Jetty内部实现了一些Handler,可以分为一下几类:
1.协调Hand ...
Android Looper和Handler
Android Looper和Handler
Message:消息,其中包含了消息ID,消息处理对象以及处理的数据等,由MessageQueue统一列队,终由Handler处理。
Handler:处理者,负责Message的发送及处理。使用Handler时,需要实现handleMessage(Message msg)方法来对特定的Message进行处理,例如更新UI等。
MessageQ ...
Android Handler 详细分析
最近项目上用到Handler比较多,遇到不少麻烦,也体会到不少,Handler在Android开发经常会用到,但是很多人包括我都是对他的原理也是一知半解,这里总结一下自己对Handler的学习,欢迎补充和纠正。
Handler的作用:
发送和处理消息(Message)
发送和处理runnable对象
Handler涉及到几个概念:
1.Message:包含了消 ...
Android Json解析
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C ...
Android UI更新
Android应用程序通常运行在一个dalvik虚拟机进程中,进程开始的时候会启动一个主线程(MainThread),主线程负责处理和UI相关的事件,如:用户的按键事件,因此主线程通常又叫UI线程。而由于Android采用UI单线程模型,所以只能在主线程中对UI元素进行操作。如果在非UI线程直接对UI进行了操作,则会报错:CalledFromWrongThreadException:only th ...
Android Handler机制详解
Android Handler机制详解
消息循环
要理解Handler机制就必须先理解什么是消息循环。初学编程一般从C语言开始,C语言程序从main函数开始,执行main函数的第一行代码开始,到main的最后一行代码结束,这时候程序就运行结束了,是一个线性的执行过程。我们从以前的算法,或者数据结构方面的小程序都是通过一个main函数来驱动测试的。这时候的程序比较简单,一般没有消息循环的概念,大部 ...
Looper,MessageQueue,Message,Handler
先看看Looper,MessageQueue,Message,Handler之间的关系.
Looper的构造函数是private,因此不能直接new,Looper的prepare方法会先检查当前线程下是否存在Looper,如果不存在则为当前线程new一个Looper,如果发现当前线程下已经存在Looper实例,则会抛出异常。
相关源码如下:
static final Thre ...
ch022 Android Handler
--------------------------------------------AndroidManifest.xml----------------------------------
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package=" ...