Android

理解使用MVP架构

在安卓开发中使用 MVP 模式已经非常普遍了,网上关于 MVP 的讲解也相当多了,不过看得再多还是自己写一遍比较熟练。
2018-01-31
4 min read

编译安卓源码

花了一两天时间终于在 Mac 上成功编译了 Android 主线最新代码,中间遇到了不少问题,也查阅了好多资料,总算是成功了,看到模拟器启动的那一刻还是挺激动的。
2018-01-31
4 min read

安卓异步之RxJava

不学习 RxJava 简直太落后了,参照网上的博客以及英文书籍《RxJavaEssentials》,开始了 RxJava 之旅 。
2018-01-31
6 min read

理解状态机

理解状态机的原理及使用。
2018-01-31
4 min read

用 Rxjava 封装 Dialog 以及 RxBinding 实现简要分析

之前有写过一篇文章:用 RxJava 封装回调方法 CallBack。 RxJava 封装回调方法的大体思路就是:使用 Observable 的 create 方法来返回一个 Observable,在 create 方法内给事物设置回调接口,用 Observable 的 onNext 方法来接受回调接口所产生的内容。 这样一来,通过 onNext 方法就把事物的回调方法转换到 Rxjava 对应的事件流里面了,再可以通过其他操作符,如 Map、FlatMap 等对事件流进行相应的转换。
2017-12-22
4 min read

Android 布局加载之 LayoutInflater

Activity 在界面创建时需要将 XML 布局文件中的内容加载进来,正如我们在 ListView 或者 RecyclerView 中需要将 Item 的布局加载进来一样,都是使用 LayoutInflater 来进行操作的。 LayoutInflater 实例的获取有多种方式,但最终是通过(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)来得到的,也就是说加载布局的 LayoutInflater 是来自于系统服务的。
2017-12-22
5 min read

Android 插件换肤原理及源码分析

在学习安卓插件化开发的路上,有一处风景是肯定要观赏的,那就是基于插件的应用换肤了。
2017-12-22
6 min read

Android 6.0 Service 启动过程源码分析(一)

Service 组件也是 Android 四大组件之一,它的启动过程分为显示和隐式两种。对于隐式启动的 Service 组件来说,我们只需要它的组件名称;对于显示启动的 Service 组件来说,我们需要知道它的类名称。 Service 组件可以被 Activity 组件启动,也可以被其他的 Service 组件启动。同时,它既可以在启动它的 Activity 组件或者 Service 组件所在的应用程序中启动,也可以在一个新的应用程序进程中启动。
2017-12-22
10 min read

Android StateMachine 状态机分析

之前就有写过一篇文章来学习状态机:状态机学习。 在之后的工作中多次用到了 StateMachine 状态机,简单记录其原理。
2017-12-22
5 min read

Android LruCache实现分析

LruCache 是安卓开发中常用到的缓存技术,LRU 的全名是 Least Recently Used,表示最近最少使用算法,也就是说当内存快到达阈值时,若某个对象最近很少使用的,那么它就会被回收掉以释放内存。
2017-12-22
4 min read