Android6.0Framework源码解析系列[目录]

看前人在好久之前就达到我如今远远不及的高度,这让我以为有些无力。也正是他们趟过的坑能指引我即将前进的路。因此我很庆幸。我庆幸有人指引,我庆幸我在前进。java

本着向大牛学习以及知其然知其因此然的精神,准备有目的、系统性的Read The Fucking Source Code。既看成本身的笔记,也但愿能够帮助部分后来者。android

这是一篇已经阅读的Anroid6.0中Framework源码目录,前期会有顺序、有目的的阅读源码,下一篇多多少少都会和上一篇有些关联,建议先马后看。后续应该会组成一个系列。尽管会有些艰难,仍是但愿本身能坚持下去。Framework,我来了。缓存

Android Zygote启动流程源码解析

本文依据6.0源码,主要分析Zygote进程的启动流程。Zygote进程是AndroidJava世界的开创者。在android系统中,全部的应用进程和SystemServer进程都是由Zygote进程fork而来。其重要性因而可知一斑。网络

Android SystemServer启动流程源码解析

Zygote进程由init进程启动,SystemServer进程和应用进程由Zygote进程启动。本文依据6.0源码,主要分析SystemServer进程的启动流程。SystemServer进程的做用是启动各类核心服务,例如Installer、ActivityManagerService、WindowManagerService、PowerManagerService等等。异步

Android Launcher启动应用程序流程源码解析

  1. 点击桌面Launcher图标后作了哪些工做?
  2. 应用程序何时被建立的?
  3. Application和MainActivity的onCreate()方法何时被调用的?

本文依据Android6.0源码,从点击Launcher图标,直至解析到MainActivity#OnCreate()被调用。工具

Android setContentView()源码解析

在Activity中通常第一句就是调用setContentView(R.layout.XXX),但这其中系统作了那些工做?咱们知道,在ClassLoader装载了MainActivity以后,首先建立了Application,以后依次调用Application对象的onAttach和onCreate()方法。而后顺序调用第一个Activity的onAttach和onCreate()方法。oop

Android XML布局文件解析过程源码解析

在Activity#setContentView()中会调用PhoneWindow#setContentView()。而在PhoneWindow#setContentView()中有这么一句mLayoutInflater.inflate(layoutResID, mContentParent)。这行代码的做用是将咱们的activity_main.xml填充到mContentParent中去。详见:setContentView源码解析。在写adapter的时候,也常常写mInflater.inflate(layoutResID, null)。那么,这行代码怎么就将xml文件转换成了View或者ViewGroup了呢?布局

Android 高级自定义Toast及源码解析

Toast中你所不知道的那些细节学习

Android Activity启动流程源码解析

Activity各个方法是何时被调用的?史上最简单也是最详细的Activity启动流程源码解析spa

Android 使用WindowManager实现悬浮窗及源码解析

极度的简单每每是繁琐的假象。

Android 从源码的角度带你彻底解析AsyncTask

你真的会用AsyncTask吗?

Android 顶级视图DecorView的前世此生

自定义View必看的顶级视图DecorView

Android Volley核心源码解析

一、特别适合数据量小,通讯频繁的网络操做。 
二、扩展性强。Volley 中大可能是基于接口的设计,可配置性强。 
三、必定程度符合 Http 规范,包括返回 ResponseCode(2xx、3xx、4xx、5xx)的处 理,请求头的处理,缓存机制的支持等。并支持重试及优先级定义。 
四、默认 Android2.3 及以上基于 HttpURLConnection,2.3 如下基于 HttpClient 实现。 
五、提供简便的图片加载工具。总之Volley就是很牛逼啦!

ThreadLocal源码解析

ThreadLocal不是一个具体的线程。它是一个线程内部的数据存储类,经过它能够再指定的线程中存储数据,数据存储之后,只有在指定线程中能够获取到存储的数据,对于其它线程来讲则没法获取到数据。

Handler、Message、MessageQueue、Looper调用过程源码浅析

Android异步消息机制分析。消息是怎么传递的?异步又是如何实现的?在看此文章以前建议不太了解ThreadLocal的读者先了解下上一篇文章《ThreadLocal源码浅析》,在后文中会有所涉及。

相关文章
相关标签/搜索