

Activity四大启动模式解析
这篇文章我们来详细解释 Activity 的四种启动模式。
Read more

Android 中的序列化
在 Android 中传递一些数据时,我们需要将数据序列化。序列化经常会用到 Serializable 和 Parcelable 这两个类,那么你有没有想过他们的区别是什么呢?这篇文章来分析一下各自的特点及优缺点,并对比一下两种结构的区别。
Read more

关于 ActivityManagerService
ActivityManagerService 是 Android 提供的管理 Activity 运行状态的系统进程,其实大家别被名字迷惑了,ActivityManagerService(后称AMS)其实也兼任管理其他组件运行状态。
Read more

Android 面试题合集
兔子自己总结的一些面试题。题目会慢慢变多,答案也全部是自己写的,并非网上找的答案。 还有一篇Awesome Android Job Interview
Read more

关于 Glide 的一切
Glide 是比较著名的图片加载库之一,类似的库还有 Picasso、COIL。这篇文章来讲讲 Glide 是如何加载图片到显示的,并且讲一讲它有哪些设计精妙的地方。 该文章使用的是 Glide 4.15.0。
Read more

Context 和它的朋友们
在 Android 开发中,最常打交道的就是 Context 了,我们创建 View/ViewGroup 要使用 Context;启动 Activity 需要 Context;新建 Service 需要 Context;哪怕是插件化、组件化开发中,最麻烦的部分也是使用 Context。 那么,既然这个东西这么重要,我们这篇文章就来说说 Context 与它的朋友们。
Read more

关于Binder的一切
关于Binder的一切毫不夸张地说,Binder 是 Android 系统中最重要的特性之一。 正如其名『粘合剂』所喻,它是系统间各个组件的桥梁,Android 系统的开放式设计也很大程度上得益于这种及其方便的跨进程通信机制。 理解 Binder 对于理解整个 Android 系统有着非常重要的作用,Android 系统的四大组件,ActivityManagerServer,PackageManagerService 等系统服务无一不与 Binder 挂钩;如果对 Binder 不甚了解,那么就很难了解这些系统机制,从而仅仅浮游与表面,不懂 Binder 你都不好意思说自己会 Android 开发;要深入 Android,Binder 是必须迈出的一步。 这篇文章将由浅入深搞懂 Binder :
Read more

你真的了解 Activity 吗?
Activity 几乎是所有 Android 开发者最熟悉的陌生人了。 说它熟悉,是因为每个开发者在进行开发时,第一个要面对的对象就是 Activity,应用界面的跳转、UI的显示全部都要依托Activity。 说它陌生,是因为几乎很少有开发者能把 Activity、Window、View、DecorView、WindowManager、ViewRootImpl 错综复杂的关系理清。 当我们打开 Android Studio,建立一个新的应用,编译启动项目,手机上出现了『Hello World!』,有没有想过这些问题: Activity 是由谁来实例化的? Window 是个啥? 经常听说 DecorView,它是个普通的 View 吗?它的作用是什么? WindowManager 起了什么作用? Act..
Read more关于 Butter Knife
这篇文章讲一下 Butterknife,但是后面会引申到 Android Jetpack 中的 DataBinding。
Read more

Handler 和它的朋友们
Android 中的进程间通信,采用 Binder 机制,那线程间通信呢?Android 给出了一个机制 —— Handler。 一提起 Handler,就不得不提到它的全家: Message MessageQueue Looper Handler 我们来一个个地解释一下。
Read more