Android AOSP系统裁记录
Android 系统裁剪是指根据需求移除不必要的组件和功能,以优化系统性能、减少存储占用或满足特定设备需求。以下是 Android 系统裁剪的基本步骤:
1. 准备环境
-
操作系统:推荐使用 Ubuntu 或 macOS。
-
工具:
-
Android SDK
-
Android NDK
-
JDK
-
Git
-
Repo 工具
-
-
源码:从 Android 开源项目 (AOSP) 获取。
参考 AOSP 源码编译android 12_aosp android12源码-CSDN博客
2. 获取 AOSP 源码
跳过详情可参考: AOSP 源码编译android 12_aosp android12源码-CSDN博客
AOSP 系统镜像包含以下主要分区:
-
/system
:系统核心分区,包含系统应用、库、框架等。 -
/vendor
:厂商定制分区,包含硬件相关的驱动和 HAL 层。 -
/product
:产品定制分区,包含预装应用和配置文件。
3、分析系统组件
-
系统分区:了解
/system
分区的内容,包括:-
/system/app
:预装应用 -
/system/priv-app
:特权应用 -
/system/framework
:系统框架 -
/system/lib
和/system/lib64
:库文件 -
/system/bin
和/system/xbin
:可执行文件
-
-
依赖关系:使用工具分析组件间的依赖,避免误删关键组件。
4. 裁剪系统
-
移除预装应用:删除
/system/app
和/system/priv-app
中不需要的应用。 -
精简系统服务:在
/system/framework
和/system/etc/permissions
中移除不必要的服务和权限。 -
删除库文件:在
/system/lib
和/system/lib64
中移除未使用的库文件。 -
移除可执行文件:在
/system/bin
和/system/xbin
中删除不必要的可执行文件。
5. 编译系统
1.设置编译环境:
source build/envsetup.sh
lunch
2.选择目标设备并编译:
make -j4
6. 刷机测试
1.将编译生成的镜像刷入设备:
fastboot flash system system.img
fastboot flash boot boot.img
fastboot flash recovery recovery.img
fastboot reboot
相关文章:
Android AOSP系统裁记录
Android 系统裁剪是指根据需求移除不必要的组件和功能,以优化系统性能、减少存储占用或满足特定设备需求。以下是 Android 系统裁剪的基本步骤: 1. 准备环境 操作系统:推荐使用 Ubuntu 或 macOS。 工具: Android SDK Android N…...

音乐游戏Dance Dance Revolution(DDR)模拟器
文章目录 (一)Dance Dance Revolution(1.1)基本情况(1.2)机体 (二)模拟器(2.1)主程序(2.2)模拟器主题 (三)曲谱…...

Lua的table(表)
Lua表的基本概念 Lua中的表(table)是一种多功能数据结构,可以用作数组、字典、集合等。表是Lua中唯一的数据结构机制,其他数据结构如数组、列表、队列等都可以通过表来实现。 表的实现 Lua的表由两部分组成: 数组部分…...
ZT36 小红和小紫的取素因子游戏
描述 小红和小紫拿到了一个正整数x,她们每次可以选择x的一个因子k(k>1),把x除以k,但要求k必须是素数。小红先手,谁先不能操作谁输。假设两人都足够聪明,最终谁取得胜利? 共进行t次游戏。 输入描述&…...
C# 使用 Newtonsoft.Json 序列化和反序列化对象实例
Newtonsoft.Json(也被称为 Json.NET)是一个广泛使用的用于在 C# 中进行 JSON 序列化和反序列化的开源库。下面将详细介绍如何使用它来序列化和反序列化对象。 1. 安装 Newtonsoft.Json 如果你使用的是 Visual Studio,可以通过 NuGet 包管理…...
用 AI 工具提升 UX/UI 设计效率:从研究到原型
—————————————————— 用 AI 工具提升 UX/UI 设计效率:从研究到原型 开篇引言: 在 UX/UI 设计领域,效率与创意之间的平衡一直是设计师们追求的目标。随着 AI 工具的崛起,设计师们不仅能更快地完成任务,…...
操作系统知识点12
1.在操作系统的结构设计中,采用层次结构的操作系统其最大优点是把整体问题局部化 2.非特权指令是指操作系统和用户均可以使用的指令 3.向处理器发出的中断信号称为中断请求 4.轮转法RR是单纯基于时间片考虑的 5.当进程处于就绪状态时,表示进程已获得…...

FASIONAD:自适应反馈的类人自动驾驶中快速和慢速思维融合系统
24年11月来自清华、早稻田大学、明尼苏达大学、多伦多大学、厦门大学马来西亚分校、电子科大(成都)、智平方科技和河南润泰数字科技的论文“FASIONAD : FAst and Slow FusION Thinking Systems for Human-Like Autonomous Driving with Adaptive Feedbac…...

Redis7——基础篇(八)
前言:此篇文章系本人学习过程中记录下来的笔记,里面难免会有不少欠缺的地方,诚心期待大家多多给予指教。 基础篇: Redis(一)Redis(二)Redis(三)Redis&#x…...

nvm安装
1.下载安装包 从官网下载https://github.com/nvm-sh/nvm/releases 这里下的是nvm-0.40.1.tar.gz 2.解压 tar -zxvf nvm-0.40.1.tar.gz 3. 修改配置文件 vi ~/.bashrc 在最后一行添加如下内容 export NVM_DIR"/usr/local/nvm-0.40.1"[ -s "$NVM…...

基于vue框架的游戏博客网站设计iw282(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
系统程序文件列表 项目功能:用户,博客信息,资源共享,游戏视频,游戏照片 开题报告内容 基于FlaskVue框架的游戏博客网站设计开题报告 一、项目背景与意义 随着互联网技术的飞速发展和游戏产业的不断壮大,游戏玩家对游戏资讯、攻略、评测等内容的需求日…...
spring MVC执行流程
详细的项目结构 src ├── main │ ├── java │ │ ├── com.example │ │ │ ├── config │ │ │ │ └── SpringMvcInitializer.java // 配置 DispatcherServlet │ │ │ │ └── SpringConfig.java // Sprin…...
递归遍历目录 和 普通文件的复制 [Java EE]
递归遍历目录 首先 先列出当前目录所包含的内容 File[] files currentDir.listFiles();if (files null || files.length 0) {// 若是空目录或非法目录, 则直接返回return;} 然后 遍历列出的文件, 分情况两种讨论 for (File f: files) {// 加个日志, 方便查看程序执行情…...

如何在docker上部署java服务
目录结构 首先 Dockerfile FROM bladex/alpine-java:openjdk17_cn_slimMAINTAINER admin@rsz.comENV TZ=Asia/ShanghaiRUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezoneRUN mkdir -p /xhWORKDIR /xhEXPOSE 8106ADD ./blade-system.…...

Machine Learning 初探
前置知识 pandas 读取文件:read_csv查看信息 describe:查看整体信息,包括每列的平均值、最大最小值、标准差等head:输出头部几行数据columns:输出所有列名loc:查询数据,或是根据索引取对应的数…...

GESP2024年12月认证C++三级( 第三部分编程题(1)数字替换)
参考程序: #include <iostream> #include <vector> #include <algorithm> using namespace std; int a[100010]; // 定义一个数组a,用于存储序列A,数组大小为100010 int main() {int n, k; // 定义变量n和k,…...
IDEA-插件开发踩坑记录-第六坑-UAST依赖问题
背景 简要说明: UAST – Unified Abstract Syntax Tree UAST (Unified Abstract Syntax Tree) is an abstraction layer on the PSI of different programming languages targeting the JVM (Java Virtual Machine). It provides a unified API for working with co…...

单片机总结【GPIO/TIM/IIC/SPI/UART】
一、GPIO 1、概念 通用输入输出口;开发者可以根据自己的需求将其配置为输入或输出模式,以实现与外部设备进行数据交互、控制外部设备等功能。简单来说,GPIO 就像是计算机或微控制器与外部世界沟通的 “桥梁”。 2、工作模式 工作模式性质特…...

信号和槽
connect(信号发送者,发送的信号,信号接收者,信号的处理); 信号函数和槽函数的参数必须是一样的,但信号的参数可以多余槽函数的参数(前面的参数类型必须一致) 是控件和控件间的信号传递,这两个…...

Window下Redis的安装和部署详细图文教程(Redis的安装和可视化工具的使用)
文章目录 Redis下载地址:一、zip压缩包方式下载安装 1、下载Redis压缩包2、解压到文件夹3、启动Redis服务4、打开Redis客户端进行连接5、使用一些基础操作来测试 二、msi安装包方式下载安装 1、下载Redis安装包2、进行安装3、进行配置4、启动服务5、测试能否正常工…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)
1.获取 authorizationCode: 2.利用 authorizationCode 获取 accessToken:文档中心 3.获取手机:文档中心 4.获取昵称头像:文档中心 首先创建 request 若要获取手机号,scope必填 phone,permissions 必填 …...

push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...

解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道
文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...
DiscuzX3.5发帖json api
参考文章:PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下,适配我自己的需求 有一个站点存在多个采集站,我想通过主站拿标题,采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...