Android内核刷入终极指南:AnyKernel3完整使用教程
2026-02-07 05:49:16作者:仰钰奇
AnyKernel3是一个革命性的刷机包模板,能够将任何内核应用到任何ROM,无论其ramdisk如何。它为内核开发者提供了强大的工具集,可以轻松修改底层ramdisk以支持内核功能,同时自动检测和保留Magisk root权限。
项目概述与核心价值
AnyKernel3继承了AnyKernel2的所有功能,并进一步增强了格式支持能力。它默认使用topjohnwu的magiskboot工具,能够自动检测并像Magisk那样修补新的Image.*-dtb文件。
项目包含完整的工具链和配置文件,主要组件包括:
- anykernel.sh - 核心配置文件,包含所有自定义设置
- tools/ - 工具目录,包含magiskboot、busybox等关键组件
- META-INF/ - 刷机脚本目录,包含update-binary和updater-script
- ramdisk/ - ramdisk文件目录
- modules/ - 内核模块目录
环境搭建与项目初始化
开始使用AnyKernel3前,需要获取项目源码:
git clone https://gitcode.com/gh_mirrors/an/AnyKernel3.git
cd AnyKernel3
验证项目结构完整性:
ls -la
核心配置文件详解
anykernel.sh文件是整个项目的核心,包含所有配置参数:
### AnyKernel setup
# global properties
properties() { '
kernel.string=ExampleKernel by osm0sis @ xda-developers
do.devicecheck=1
do.modules=0
do.systemless=1
do.cleanup=1
do.cleanuponabort=0
device.name1=maguro
device.name2=toro
device.name3=toroplus
device.name4=tuna
'; } # end properties
关键配置参数解析
设备检查与识别
do.devicecheck=1- 启用设备检查,需要至少一个device.name属性device.name1=maguro- 设备名称,对应build.prop中的ro.product.device等属性
模块管理
do.modules=1- 将modules目录中的.ko文件推送到系统相应位置并设置正确权限
Systemless支持
do.systemless=1- 启用systemless模块支持,创建"ak3-helper" Magisk/KernelSU模块
清理控制
do.cleanup=1- 清理工作目录do.cleanuponabort=0- 安装中止时保留工作目录
设备兼容性配置
AnyKernel3支持多设备适配,通过简单的配置即可让同一个刷机包支持多种设备型号:
# 多设备支持配置
device.name1=maguro # Galaxy Nexus GSM
device.name2=toro # Galaxy Nexus Verizon
device.name3=toroplus # Galaxy Nexus Sprint
device.name4=tuna # Galaxy Nexus通用标识
这种配置方式大大简化了多设备内核开发的复杂度,开发者只需维护一个刷机包即可覆盖多个设备。
高级功能配置
版本兼容性控制
supported.versions=6.0 - 7.1.2
supported.patchlevels=2019-07 -
supported.vendorpatchlevels=2013-07
supported.versions- 匹配Android版本,支持列表或范围supported.patchlevels- 匹配安全补丁级别supported.vendorpatchlevels- 匹配厂商安全补丁级别
分区与压缩配置
# boot shell variables
BLOCK=/dev/block/platform/omap/omap_hsmmc.0/by-name/boot;
IS_SLOT_DEVICE=0;
RAMDISK_COMPRESSION=auto;
PATCH_VBMETA_FLAG=auto;
BLOCK参数选项
- 直接指定分区路径
BLOCK=auto- 自动检测设备启动分区BLOCK=boot- 指定分区名称
刷机包构建流程
准备工作
- 放置内核文件 - 将最终的内核构建产物(如Image.gz-dtb或zImage)放在zip根目录
- 添加ramdisk文件 - 将所需的ramdisk文件放入/ramdisk目录
- 添加模块文件 - 将模块文件放入/modules目录
构建命令
# 创建刷机包
zip -r9 UPDATE-AnyKernel3.zip * -x .git README.md *placeholder
构建过程会自动集成所有必要组件,确保刷机包的完整性。
刷入操作指南
准备工作检查清单
- [ ] Bootloader已解锁
- [ ] 已安装第三方Recovery(如TWRP)
- [ ] 重要数据已备份
- [ ] 设备电量充足
- [ ] 刷机包完整性已验证
刷入执行步骤
- 文件传输 - 将ZIP刷机包复制到设备存储
- 进入Recovery - 重启设备进入Recovery模式
- 选择安装 - 在Recovery中选择安装刷机包
- 确认刷入 - 滑动确认刷入操作
- 重启系统 - 完成更新后重启设备
命令方法与功能
AnyKernel3提供了丰富的命令方法来处理各种ramdisk修改需求:
基础操作命令
ui_print "<text>"- 输出信息到Recovery界面abort ["<text>"]- 中止安装过程file_getprop <file> <property>- 从属性文件获取属性值
文件操作命令
backup_file <file>- 备份文件restore_file <file>- 恢复文件replace_file <file> <permissions> <patch file>- 替换文件
文本编辑命令
replace_string <file> <if search string> <original string> <replacement string> <scope>- 替换字符串insert_line <file> <if search string> <before|after> <line match string> <inserted line>- 插入行remove_line <file> <line match string> <scope>- 删除行
多分区与多槽位支持
多分区刷机包
创建支持多个分区的刷机包:
- 从zip中移除ramdisk和patch文件夹
- 包含以分区命名的"-files"文件夹(不带槽位后缀)
- 例如:boot-files + recovery-files
多槽位刷机包
创建支持多个槽位的刷机包:
- 为当前活动槽位设置正常的zip布局
- 通过设置
BLOCK=、SLOT_SELECT=inactive和RAMDISK_COMPRESSION=来重置为不活动槽位
工具组件说明
项目包含完整的工具链:
- magiskboot - 核心boot镜像处理工具
- busybox - 嵌入式Linux工具集
- magiskpolicy - SELinux策略管理工具
- ak3-core.sh - AnyKernel3核心脚本
最佳实践建议
配置优化
- 对于无法硬编码到源码中的调整,应添加额外的init.tweaks.rc或bootscript.sh
- 在较新的设备上,Magisk允许在/overlay.d中放置这些调整
兼容性考虑
- 为了获得最广泛的AK3兼容性,修改ramdisk文件通常比替换它更好
调试支持
- 在刷机包文件名后添加-debugging后缀,可以启用调试模式
总结与展望
AnyKernel3为Android内核开发者和刷机爱好者提供了极大的便利。其简单的配置方式、强大的多设备支持能力和自动Magisk兼容特性,使其成为Android内核分发的首选方案。
通过掌握AnyKernel3的使用,您可以:
- 创建跨设备兼容的内核刷机包
- 自动保留Magisk root权限
- 简化内核更新和分发流程
- 实现设备性能的个性化优化
开始您的AnyKernel3之旅,释放Android设备的全部潜能!
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
请把这个活动推给顶尖程序员😎本次活动专为懂行的顶尖程序员量身打造,聚焦AtomGit首发开源模型的实际应用与深度测评,拒绝大众化浅层体验,邀请具备扎实技术功底、开源经验或模型测评能力的顶尖开发者,深度参与模型体验、性能测评,通过发布技术帖子、提交测评报告、上传实践项目成果等形式,挖掘模型核心价值,共建AtomGit开源模型生态,彰显顶尖程序员的技术洞察力与实践能力。00
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00
MiniMax-M2.5MiniMax-M2.5开源模型,经数十万复杂环境强化训练,在代码生成、工具调用、办公自动化等经济价值任务中表现卓越。SWE-Bench Verified得分80.2%,Multi-SWE-Bench达51.3%,BrowseComp获76.3%。推理速度比M2.1快37%,与Claude Opus 4.6相当,每小时仅需0.3-1美元,成本仅为同类模型1/10-1/20,为智能应用开发提供高效经济选择。【此简介由AI生成】Python00
Qwen3.5Qwen3.5 昇腾 vLLM 部署教程。Qwen3.5 是 Qwen 系列最新的旗舰多模态模型,采用 MoE(混合专家)架构,在保持强大模型能力的同时显著降低了推理成本。00- RRing-2.5-1TRing-2.5-1T:全球首个基于混合线性注意力架构的开源万亿参数思考模型。Python00
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
567
3.83 K
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
892
667
Ascend Extension for PyTorch
Python
376
446
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
349
200
昇腾LLM分布式训练框架
Python
116
145
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.37 K
778
暂无简介
Dart
798
197
React Native鸿蒙化仓库
JavaScript
308
359
openJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力
TSX
1.13 K
271