- 博客(15)
- 资源 (26)
- 收藏
- 关注
原创 使用AsyncTask的问题
目录 AsyncTask的问题一、线程池的运行机制二、使用AsyncTask可能出现的问题三、解决方法AsyncTask的问题一、线程池的运行机制 public static final Executor THREAD_POOL_EXECUTOR= new ThreadPoolExecutor(CORE_POOL_SIZE, MAXIMUM_POOL_SIZ...
2018-10-13 22:54:43
216
原创 Android之消息机制(三)源码解析
Android之消息机制(三)源码解析干货,非常干。。。目录一、概述二、源码2.1 Message源码2.1.1 实现序列化2.1.2 obtain()方法,消息池中取消息,以链表实现队列;2.1.3 Message的recycle(),用于回收消息,时机是在Looper.loop()方法中,执行完Handler处理后。2.2 MessageQueue源码2...
2018-10-13 22:29:34
270
原创 Android之消息处理机制(二)Handler的本质-Message和Looper到底是什么?
目录 Android之消息处理机制(二)一、MessageQueue二、Looper2.1 消息池2.2 自醒机制 Android之消息处理机制(二)以下皆为干货,比较干,需要读者细细理解。 前面(一)已经解释了Handler的基本机制了,下面来概括一下本质。 一、MessageQueue MessageQueue其实就是一个w...
2018-10-13 10:55:25
207
原创 四大组件与AMS交互初步理解
目录 四大组件与AMS交互初步理解一、Activity二、Service三、BroadcastReceiver四、ContentProvider 四大组件与AMS交互初步理解一、ActivityActivityThread是应用的主进程,Activty想要与ams通信(如运行startActivity()),都是通过Binder机制,ActivityM...
2018-09-08 10:11:37
735
原创 ActivityManagerService与ActivityThread简单交互流程
ActivityManagerService与ActivityThread简单交互流程ActivityThread执行(主线程)ActivityManagerNative.getDefault()->ServiceManager.getService(“activity”)返回Ams的binder对象; 通过该binder对象调用attachApplication(IAppl...
2018-09-06 21:04:46
606
原创 算法题求和
一道算法题输入一个正整数n,输出一系列正整数使得他们的和等于n,输出的正整数要求是一个正整数的平方,要求输出的正整数个数最少。举例:10系统输出要求:举例:10=1+9 思路:循环判断,假如i的平方=n则为该值,假如i的平方小于n且i+1的平方大于n,则将n-i*i的差再进行上面的循环判断。代码实现 public void function1(){ ...
2018-08-24 23:13:56
665
原创 单例模式汇总
目录 单例模式汇总一、单例模式的几种形式二、具体代码实现三、应用场景及各种形式的特点四、小结 单例模式汇总本文其中的内容大多是对我平时的阅读和实践的总结,希望对其他开发者有所帮助。但毕竟是个人的一些思考,难免有疏漏,也欢迎对本文的内容提出建议。 一、单例模式的几种形式1、懒汉基本模式2、懒汉线程安全模式3、双重校验锁懒汉加载模式4、...
2018-07-27 16:55:24
264
原创 HashMap遍历方式比较
Table of Contents HashMap遍历方式比较一、HashMap的遍历获取到value的几种方式二、代码三、结果四、思考 HashMap遍历方式比较一、HashMap的遍历获取到value的几种方式1、先通过获取到keySet,遍历keyset中的key,通过key去获取到value;2、获取到map.values(),遍历获取到v...
2018-07-26 21:56:19
641
原创 替换项目中的if-else方法(工厂模式+策略模式)
替换项目中的if-else方法(工厂模式+策略模式)一、项目中出现的if-else的情形 @Override public void onClick(View view) { int i = view.getId(); if (i == R.id.tv_forget_gestrue_pwd) { showForget...
2018-07-24 21:18:40
7368
1
原创 AOP框架AspectJ的使用(Android)
Table of Contents AOP框架AspectJ的使用(Android)一、什么是AOP二、AspectJ三、在Android项目中使用AspectJ3.1 配置AspectJ3.2 自定义注解3.3 用@Aspect标注切面3.4 在切面类中定义PointCut(切入点)3.5 在切面类中定义Advance(通知)3.6 对方法使用该...
2018-07-21 10:23:49
545
原创 与WebView交互(JsBridge框架)
Table of Contents与WebView交互(JsBridge框架)一、未封装的JS-Native调用二、使用JSBridge三、在JSBridge上进一步封装(优化)四、部分调用的结果五、可能容易踩的坑 与WebView交互(JsBridge框架)一、未封装的JS-Native调用安卓提供Webview用来加载html页面,以安卓4.4系统为分水...
2018-07-21 10:13:35
4647
原创 stetho调试框架(Android)
stetho调试框架(Android)一、概述二、基本使用三、Demo关键代码(除掉环境配置)四、调试结果并进行查看五、容易出现的坑六、Demo项目结构 stetho调试框架(Android)一、概述stetho是Facebook开源的一个Android调试工具,通过Stetho,开发者可以使用chrome的inspect功能,对Android应用进行...
2018-07-21 09:54:54
616
原创 CountDownTimer的使用和内部类的内存管理
CountDownTimer的使用和内部类的内存管理一、概述在项目开发中经常会用到倒计时这个功能,而Android也帮我们封装好了一个类CountDownTimer,给我们的开发带来了很大的方便;二、APICountDownTimer (long millisInFuture, long countDownInterval) 参数1,设置倒计时的总时间(毫秒) 参数2,设置每...
2018-07-21 09:35:12
613
原创 三分钟看懂Android事件处理机制
前面介绍了Android应用层的第一个主要机制,现在我们来看事件处理机制。很简单,只要看懂这幅图即可。总结一下这幅图, 触摸事件的横向流程是先ACTION_DOWN ->ACTION_MOVE -> ACTION_UP 触摸事件的纵向流程是先从Activity -> ViewGroup -> View(如上图所示,包裹关系Activity包裹了ViewGroup...
2018-02-23 18:34:17
961
原创 Android之消息处理机制
Android应用程序有两大机制:消息机制和事件处理机制今天我们来简单谈下消息机制一、基本元素Looper:消息管理器,管理Message Queue。Message:消息Message Queue:消息队列。Looper会不断地从MessageQueue中去取消息进行发送到Handler中进行处理(确切是handleMessage中进行处理)二、创建绑定不同线程的HandlerHandler会与...
2018-02-19 12:20:01
288
自定义Adapter适合绝大多数情形的应用 ListView
2014-08-30
Galley-ImageSwitcher配合使用,可实现滑动选择头像效果
2014-08-30
surfaceView控件资料
2014-08-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人