源码分析 | 布局文件加载流程
Activity 中的 setContentView
getWindow().setContentView(layoutResID)...
android ContentProvider启动过程分析
ContentProvider是一个可以跨进程的组件,比如我们可以使用通讯录的ContentProvide...
Apk 预装详解
文章基于 Aosp Android10_r41 版本。
本文介绍如何在 Aosp 中预装已经编译好的...
Class 和 Dex 文件深入理解 | JAVA_Android
class 文件结构深入解析
什么是 class 文件
能够被 JVM 识别,加载并执行的...
android Binder分析
讲Android Binder机制的文章非常多,这篇文章主要是理一下我对Binder的理解。本文...
Android Handler机制:Looper、Handler、MessageQueue、Message的关系
一、概述
Handler是Android中处理异步消息的机制。Looper、Handler、MessageQue...
如何阅读 Android 系统源码 —— Java 篇
1. 工具篇 —— AIDEGen + Android Studio
AIDEGen,我叫它 “爱得跟”,大概是 An...
写给应用开发的 Android Framework 教程——玩转AOSP篇之 Android 系统开发工具推荐
下面推荐的是我常用的工具,如果你有好用的开发工具欢迎在评论区留言讨论交流。
...
AOSP 篇之添加 Product
1. 什么是 Product
在 App 的开发中,我们要去打渠道包,根据不同应用市场的要...
AOSP添加配置文件与删除已有模块
本文基于 AOSP Android10_r41 源码环境。
1. 添加配置文件
PRODUCT_COPY_FI...
Android视图层源码(深入剖析Window组成)
Android中所有的视图(View)都是通过Window来呈现的,不管是Activity、Dialog还是...
Android Framework 核心基础的学习路线图
1. 为什么要学习 Android Framework?
作为一名应用层 App 开发工程师,我们为...
Android垃圾回收机制与分代回收策略
GC 回收机制与分代回收策略
垃圾回收(Garbage Collection,简写为 GC)可能是...
AOSP 之系统 App 源码添加
1. 如何新建一个系统 App 项目
使用 Android Studio 新建一个空项目 FirstSyst...
Android | 理解 ViewRootImpl
简介
ViewRootImpl 是 View 的最高层级,是所有 View 的根。ViewRootImpl 实现...
Android Binder 机制——AIDL 的使用和原理分析
AIDL 使用步骤
1.创建 UserManager.aidl 接口文件,声明作为 Server 端的远程 S...
Android | 输入系统(IMS)
前言
一般情况下很多同学对于点击事件的认识都只存在于从 Activity 开始的,然...
基于Android T:包管理机制详解(下)
前言
前面一篇文章我们讲解了PKMS的启动过程。
PKMS启动过程中主要做了以下事情...
Handler的初级、中级、高级问法,你都掌握了吗?
Handler是Android中的消息处理机制,是一种线程间通信的解决方案,同时你也可...