Recent posts

Android 12编译系统-5 ninja介绍

1 minute read

最开始,Ninja是用于Chromium浏览器中,Android在SDK7.0中也引入了Ninja。Ninja其实就是一个编译系统,如同make,使用Ninja主要目的就是因为其编译速度快

Android 12编译系统-4 kati介绍

less than 1 minute read

Kati是为了提高Android编译速度而产生的实验性的GNU make克隆的工具。本身没有提供快速编译,而是将Makefile文件转换为Ninja文件,再通过Ninja进行编译提速。 目前Android 12上,Kati(即prebuilts/build-tools/linux-x86/bin/ckati...

Android 12编译系统-3 打包image镜像流程

3 minute read

在Android 12 AOSP源码的build/core/main.mk中定义了很多伪目标,我们可以直接通过make 目标名称进行编译,镜像的生成定义也在该文件中。本篇主要以system镜像为例,进行流程梳理分析。

Android 12编译系统-1 编译框架介绍(源码&out&编译模块结构)

8 minute read

基于Android 12 AOSP源码(android-12.0.0_r3),对Android编译系统框架作学习梳理。 开篇从Android的源码结构入手,让我们先知道Android源码架构包含了哪些内容、Android编译结果目录有哪些内容。然后了解Android编译系统模块的结构组成。

Android Automotive Framework调试技巧

24 minute read

Android系统调试技巧积累笔记,主要包含Android Framework,以及日常接触的git、adb、linux系统等调试技巧。

Android SELinux权限概念和配置说明

5 minute read

本篇主要讲述Android SELinux的基本概念,包含类型、属性、规则,Sepolicy的核心模块、关键文件,SELinux配置的步骤、调试验证方法等。

Android DropBox模块笔记

11 minute read

Android DropBox是Android用来持续化存储系统数据的一个管理类,主要用于记录Android运行过程中, 内核, 系统进程, 用户进程等出现严重问题时的log。

Android UpdateEngine模块流程(含序列图)

7 minute read

Android A/B升级又称静默升级,它是一种在系统运行过程中进行的升级功能。为了减小系统运行负荷,整个升级过程会保持在一个较低的IO状态,所以升级时间比recovery升级明显要长。本文是基于Android 12 AOSP源码,对update engine模块的流程进行梳理,最主要的内容是绘制的几张序列...