开发AndroidAPP经常会使用AsyncTask框架来异步加载资源或者异步到服务器拉消息,等任务完成后再主动更新结果到UI主线程,AsyncTask框架可以非常方便的获取线程异步执行结果。Java5之前,Java并没有提供API用于查询线程是否执行完毕以及如何获取线程执行的结果;Java5之后版本提..
分类:
其他好文 时间:
2014-11-14 18:04:57
阅读次数:
249
GridView加适配器的方式如果仅仅只用gridview加适配器的方法,因为加载图片是需要时间的,如果你直接在getview中加载图片的话,就会影响UI,照成滑动的时候卡顿。所以,每加载一个图片的时候,我们会开启一个额外的进程,这样就不会影响UI主线程了。仅仅只是开启一个额外的线程..
分类:
移动开发 时间:
2014-11-08 02:19:33
阅读次数:
236
前言 在上一篇文章中《Android:异步处理之Handler+Thread的应用(一)》,我们知道Android的UI主线程主要负责处理用户的按键事件、用户的触屏事件以及屏幕绘图事件等;既然UI老人家都这么忙了,我们这些开发者肯定不能不识趣的去添乱阻塞UI线程什么的,否则UI界面万一停止响应了呢....
分类:
移动开发 时间:
2014-11-07 00:51:43
阅读次数:
263
前言 很久很久以前就听说了,每一个android的应用程序都会分别运行在一个独立的dalvik虚拟机进程中,而在每个虚拟机在启动时会运行一个UI主线程(Main Thread),而为啥叫UI主线程而不是AI主线程或者是BI主线程呢?因为它要处理全部和UI相关的事件;因为Android系统采用的是U....
分类:
移动开发 时间:
2014-11-05 01:53:26
阅读次数:
296
AsyncTask和Handler对比1 ) AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使...
分类:
其他好文 时间:
2014-11-01 21:43:01
阅读次数:
226
android 的service和activity是运行在UI主线程的。在android线程中,只有主线程即UI线程有自己的默认的消息队列。子线程需要创建自己的消息队列,并把消息发给队列,并循环起来,发给handler处理。
1、Looper.prepare();给子线程创建消息队列。
2、Looper.loop();把消息放入消息队列并循环起来。
如下是一个通过activity的oncre...
分类:
移动开发 时间:
2014-10-31 15:51:01
阅读次数:
186
AsyncTask和Handler对比1 ) AsyncTask实现的原理,和适用的优缺点AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.使...
分类:
移动开发 时间:
2014-10-29 16:49:49
阅读次数:
225
android AsyncTask介绍
AsyncTask和Handler对比
1 ) AsyncTask实现的原理,和适用的优缺点
AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.
使用的优点:
l 简单,快捷
l ...
分类:
移动开发 时间:
2014-10-13 17:09:10
阅读次数:
267
用Soundpool能够播一些短的反应速度要求高的声音, 比方游戏中的爆破声,而Mediaplayer适合播放长点的。 MediaRecorder主要用来录音。SoundPool加载音乐文件使用了独立的线程,不会堵塞UI主线程的操作。可是这里假设音效文件过大没有加载完毕,我们调用play方法时可能产...
分类:
移动开发 时间:
2014-10-12 12:27:28
阅读次数:
287
Android的UI操作不是线程安全的(出于提高性能考虑,避免实现多线程同步等机制所引入的延时),若多个线程同时对UI元素进行操作,可能导致线程安全问题。因此,Android中做了严格的规定:只有UI主线程才能对UI进行设置与操作。在实际编程中,为了避免UI界面长时间得不到响应而导..
分类:
移动开发 时间:
2014-10-11 18:41:36
阅读次数:
240