在Android中每个应用的UI线程是被保护的,不能在UI线程中进行耗时的操作,其他的子线程也不能直接进行UI操作。 为了达到这个目的Android设计了handler Looper这个系统框架。 首先讲解在主线程中使用Handler时源码跟踪过程。 正常在activity的oncreate函数中定 ...
分类:
移动开发 时间:
2017-04-01 21:13:48
阅读次数:
267
前言 对于内存泄漏,我想大家在开发中肯定都遇到过,只不过内存泄漏对我们来说并不是可见的,因为它是在堆中活动,而要想检测程序中是否有内存泄漏的产生,通常我们可以借助LeakCanary、MAT等工具来检测应用程序是否存在内存泄漏,MAT是一款强大的内存分析工具,功能繁多而复杂,而LeakCanary则 ...
分类:
移动开发 时间:
2017-03-29 22:41:29
阅读次数:
229
Android的JNI开发主要有两中情况:一种是使用已经编译好的.so动态库;一种是使用c/c++源代码开发。下面分别介绍: 一、使用已经编译好的so 这种情况比较件简单,只要把的.so文件放到相应的目录即可。如下: .[module_name] . . [src] . . .[main] . . ...
分类:
移动开发 时间:
2017-03-15 14:39:01
阅读次数:
332
1、为什么要使用Handler机制呢? 一般更新UI,我们都使用线程防止主线程的卡顿,但是我们都知道,java是线程不安全的,很容易造成不同的线程操作同一个view产生混乱。我们无法做到给每个线程,每个view对象都加一个锁,所以谷歌提供了一个给我们handler,通过looper这样的不断压栈出栈 ...
分类:
其他好文 时间:
2017-03-08 23:59:43
阅读次数:
272
1,Handler机制和原理?Handler是一个消息分发对象,先进先出。当Hanlder发送消息时,首先进入消息队列,通过Looper对消息队列进来轮询,处理未处理的消息,并发给对应Handler进行处理。消息的发送和接收不是同步的。2,什么时候用Handler?子线程刷新UI界面,线程间通信,一些..
分类:
其他好文 时间:
2017-03-08 01:24:13
阅读次数:
128
集合类是否线程安全Vector 线程安全ArrayList 非线程安全LinkedList 非线程安全Hashtable 线程安全HashMap 非线程安全TreeMap 非线程安全 Tween动画alpha 渐变scale 大小translate 移动rotate 旋转 Activity各个什么周 ...
分类:
移动开发 时间:
2017-03-07 22:41:13
阅读次数:
511
1、概述前面写过一篇文章《Android中的消息机制》简单分析了异步消息机制,本文将深入解读Handler的原理。2、基本概念
单线程模型中的Message、Handler、Message Queue...
分类:
移动开发 时间:
2017-03-05 11:37:48
阅读次数:
297
import android.content.Context; import android.os.Handler; import android.os.Looper; import android.widget.Toast; /** * Created by zhengping on 2017/1... ...
分类:
其他好文 时间:
2017-02-23 20:57:53
阅读次数:
138
import android.os.Handler; import android.os.Looper; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class ... ...
分类:
其他好文 时间:
2017-02-23 20:40:04
阅读次数:
370
( 转载请务必标明出处:http://www.cnblogs.com/linguanh/, 本文出自:【林冠宏(指尖下的幽灵)的博客】) 前序 本文将会把一下三个问题阐述清楚以及一个网上的普遍观点的补充: 1,安卓 APP 启动过程,对于Activity 的 onCreate 等生命周期的函数为什么 ...
分类:
移动开发 时间:
2017-02-18 11:02:13
阅读次数:
415