当前搜索:

[置顶] 红黑树的操作揭秘手册

前言 二叉树知识点回忆以及整理这篇文章中我们说过“二叉树是一个简单的二分查找,但其性能取决于二叉树的层数”。 - 最好的情况是O(logn),存在于完全二叉树情况下,其访问性能近似于折半查找; - 最差的情况是O(n),比如插入的元素所有节点都没有左子树(右子树),这种情况需要将二叉树的全部...
阅读(115) 评论(0)

[置顶] Dialog、Toast的Window和ViewRootImpl

前言文章Activity中的Window的setContentView、遇见LayoutInflater&Factory、ViewRootImpl的独白,我不是一个View(布局篇) 分别讲述了Activity的setContentView添加View、LayoutInflater布局解析...
阅读(282) 评论(0)

[置顶] 遇见LayoutInflater&Factory

在我们写listview的adapter的getView方法中我们都会通过LayoutInflater.from(mContext)获取LayoutInflater实例然后调用inflate方法创建View。这个有xml布局文件转化为View对象的过程到底是怎么样的,我们今天通过源码来了解一下。
阅读(189) 评论(0)

[置顶] Java垃圾回收器与内存分配策略

上一篇JVM内存模型讲述了Java虚拟机在运行时所管理的内存划分下的每个数据区域的各自用途,以及创建和销毁时间。当需要排查各种内存泄漏、内存溢出问题时,当来及收集成为系统达到更高并发量的瓶颈时,我们需要对JVM的GC机制和内存分配又更多的了解,这边文章是在上一篇文章的基础之上讲述了Java垃圾回收...
阅读(3267) 评论(8)

[置顶] 又一年对Android消息机制(Handler&Looper)的思考

前言Android消息机制对于每一个Android开发者来说都不陌生,在日常的开发中我们不可避免的要经常涉及这部分的内容。从开发角度来说,Handler是Android消息机制的上层接口,这使得在开发过程中只需要和Handler交互即可。Handler的使用过程很简单,通过它可以轻松的将一个任务切...
阅读(698) 评论(1)

[置顶] JVM虚拟机之类加载的过程

我们都知道JVM虚拟机的可执行文件为.class文件,那么什么时候JVM虚拟机会加载自己所需要的类呢?之前自己一直有这样的问题,上网找过好多网友的解释,感觉好像理解但是自己却无法说清楚,今天看了《深入理解JVM虚拟机》一书的讲解感觉自己有些透了,在此记录下来自己的理解~!
阅读(1810) 评论(1)

[置顶] Android类加载之PathClassLoader和DexClassLoader

Dalvik虚拟机加载的dex文件。dex文件是Android对与Class文件做的优化,以便于提高手机的性能。可以想象dex为class文件的一个压缩文件。dex在Android中的加载和class在jvm中的相同都是基于双亲委派模型,都是调用ClassLoader的loadClass方法加载类。
阅读(1942) 评论(2)

[置顶] AIDL源码解析in、out和inout

为什么会想写这篇文章,只因为一个error idl.exe E 4928 5836 type_namespace.cpp:130] 'Book' can be an out type, so you must declare it as in, out or inout. 看过上一篇文...
阅读(2122) 评论(0)

[置顶] Android:IPC之AIDL的学习和总结

为了使得一个程序能够在同一时间里处理许多用户的要求。即使用户可能发出一个要求,也肯能导致一个操作系统中多个进程的运行(PS:听音乐,看地图)。而且多个进程间需要相互交换、传递信息,IPC方法提供了这种可能。IPC方法包括管道(PIPE)、消息排队、旗语、共用内存以及套接字(Socket)。
阅读(2169) 评论(2)

[置顶] Retrofit2.0+Okhttp不依赖服务端的数据缓存

随着Retrofit在项目中的使用,替换的以前使用的网络框架,相关的缓存机制也要进行替换,网络上大部分的Retrofit+okhttp缓存资料都是进行针对所有url的而且需要服务端的配合。有些时候是先有服务然后app去调用这些服务,所以这个时候没有服务端的配合我们在前端实现缓存比较空难但并不是很可...
阅读(1692) 评论(0)

[置顶] Android网络之HttpUrlConnection和Socket关系解析

多年以前Android的网络请求只有Apache开源的HttpClient和JDK的HttpUrlConnection,近几年随着OkHttp的流行Android在高版本的SDK中加入了OkHttp。但在Android官方文档中推荐使用HttpUrlConnection并且其会一直被维护,所以在学...
阅读(4449) 评论(1)

[置顶] Android网络之HttpUrlConnection和Socket关系图解

前几天阅读完Retrofit2.0源码写了一篇Retrofit2.0使用和解析 的文章,因为Retrofit2.0现在只支持OkHttp,OkHttp网络框架也在Android高版本的SDK中使用,自己为了能更好的优化Android中关于网络这个模块,然后又阅读了OkHttp3.0的源代码。OkH...
阅读(1875) 评论(0)

[置顶] Android网络之Retrofit2.0使用和解析

Retrofit+Rxjava+okhttp是时下比较受欢迎的网络请求框架,其源代码并不是很多,其底层网络通信时交由 OkHttp来完成的,但是Retrofit运用了大量的设计模式,代码逻辑很清晰。本文通过Retrofit2.0的使用讲述其实现原理
阅读(10599) 评论(1)

【可视化教程】iTerm2+oh-my-zsh+solarized配色方案

【可视化教程】iTerm2+oh-my-zsh+solarized配色方案,自己Mac的terminal配色;
阅读(78) 评论(0)

Android项目解耦--路由框架ARouter的使用

Android项目解耦–路由框架ARouter源码解析前言随着业务量的增长,客户端必然随之越来越业务和功能模块耦合越来越生,开发人员代码维护成本越来越高。 App一般都会走向组件化、插件化的道路,而组件化、插件化的前提就是解耦,那么我们首先要做的就是解耦页面之间的依赖关系。
阅读(269) 评论(0)

Android项目解耦--路由框架ARouter源码解析

前言 上一篇文章Android项目解耦–路由框架ARouter的使用讲述了ARouter在项目中的使用,这边文章主要对ARouter的源码进行学习和分析。 ARouter的结构 ARouter主要由三部分组成,包括对外提供的api调用模块、注解模块以及编译时通过注解生产相关的类模块。 ...
阅读(88) 评论(0)

ViewRootImpl的独白,我不是一个View(布局篇)

前言前一段时间写过两篇关于View的文章 Activity中的Window的setContentView 和 遇见LayoutInflater&Factory 。分析了Activity设置页面布局到页面View元素进行布局到底经历了一个怎么样的过程?
阅读(166) 评论(0)

Android换肤原理和Android-Skin-Loader框架解析

前言Android换肤技术已经是很久之前就已经被成熟使用的技术了,然而我最近才在学习和接触热修复的时候才看到。在看了一些换肤的方法之后,并且对市面上比较认可的Android-Skin-Loader换肤框架的源码进行了分析总结。再次记录一下祭奠自己逝去的时间。
阅读(720) 评论(0)

迟到一年HashMap解读

HashMap和List这两个类是我们在Java语言编程时使用的频率非常高集合类。“知其然,更要知其所以然”。HashMap认识我已经好多年了,对我在工作中一直也尽心尽力的提供帮助。我从去年开始就想去它家拜访来着,可是经常因为各种各样的原因让其遗忘在路过的风景中......
阅读(262) 评论(2)

Hexo博客yelee主题添加Gitment评论系统

前言自从六月份多说评论关闭后,接着好不容易迁到网易云跟帖。8月1日网易云跟帖发布公告宣布停止服务。看到wordpress博客大部分接的是畅言,可惜畅言需要网址备案,没有买阿里云服务器域名不给备案。今天突然看到了gitment(PS:gitment是imsun利用github上的issues做的评论...
阅读(933) 评论(0)
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 30万+
    积分: 4194
    排名: 9085
    博客专栏
    最新评论