[CyanogenMOD移植教程]第三章:移植第一步 编译recovery

rec移植教程 移植了RECOVERY又没有刷机包测试怎么办呢?用RECOVERY文件管理吧! 什么?你居然连RECOVERY文件管理都不知道是啥!那你就out啦! 让小编来教你使用吧! 首先把 aromafm-1.9-cn.zip 拷贝进你内存卡或者手机储存 如果连拷贝都不会你可以去屎了! 拷贝好之后呢让手机进入RECOVERY! 完成以上操作后听小编我说完你在操作!这个不是刷机所以不需要双清 你双清了你就悲剧了!都还没测试能不能用呢! 到安装zip包那里找到 aromafm-1.9-cn.zip 安装它! 如果进入一个文件管理器界面,那么就恭喜你了!你移植的RECOVERY可以卡刷! 备份系统和还原系统之类的也测试下吧!所有功能测试可以使用就得用安卓厨房先做原厂包吧! 小编废话一下哈 根据二○○二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含 的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经 软件著作权人许可,不向其支付报酬! 桃源载站:以绿色软件、精品软件、破解软件为主的下载网站,打造软件纯净天空。 下载的软件仅能作为学习研究目的使用,请您于24小时内自觉将其删除,转载请注明原处! 立即下载
作者:秋叶随风 (ivan)
来源:深度社区

      本章介绍并且讲解如何编译一个支持你设备的recovery。
     前面已经介绍过CyanogenMod是什么东西,以及环境搭建,android源码的大概框架。地址: http://blog.sina.com.cn/u/1697247850   ,所以这里就不再介绍。
     首先你要确定你的设备,是否支持刷第三方recovery,或者是否支持fastboot模式,或者是否解锁bootloader,如果你的设备上述都不支持,那么你的机器可能就不能移植第三方系统。如果这样请跳过本文。当你确定你的设备有支持上述所讲的,那么恭喜你,你的设备可以移植第三方系统。
       接下来我们开始干活了,工欲善其事,必先利其器。制作支持你手持设备的recovery。这里以中兴n760为例子介绍如何编译 支持中兴n760的recovery.
       如果你已经下载了cm源码,请往下看,如果你没有下载源码,请按照前面发的教程下载源码.首先在device目录下面建立一个zte目录,这个目录是厂商的名字,例如中兴就是zte  我就建立zte,华为的话我就建立huawei,然后在zte 目录下面 建立一个目录为roamer  这个名字如何得到呢,在手机rom里面system/build.prop 目录下面搜索  ro.product.device 你会发现ro.product.device =roamer  所以我把设备名称定为 roamer目录都新建好了之后,我们来看一下 目录树
system
|-------device 
           |-------zte
                     |----roamer
这个就是目录结构,我们在roamer目录下面,新建
recovery_ui.c   这个文件里面是 手机各按键对应的  按键值,这样写入之后才能正确选择按键
AndroidBoard.mk    连接地址到kernel 
AndroidProducts.mk  让编译工具连接到device_roamer.mk 
BoardConfig.mk   手持设备机器CPU  GPU型号参数配置
device_roamer.mk    build.prop信息添加,私有库  xml文件  init文件拷贝  按机器设备device来写roamer是N760的设备型号
kernel  官方提取,boot.img提取提取可以使用国外高手制作的厨房软件
recovery.fstab  手机分区表
system.prop  可有可无
从官方rom提取,比如 n760  boot.img 里面提取的init.roamer.rc 文件 这个也是需要这些文件的.
首先我们写AndroidBoard.mk  文件
# 这一句的意思的 根目录就是  roamer目录
AndroidProducts.mk 
  看文件名
PRODUCT_MAKEFILES := \
   $(LOCAL_DIR)/device_roamer.mk
BoardConfig.mk  设备的配置文件
USE_CAMERA_STUB := true
# inherit from the proprietary version
-include vendor/zte/roamer/BoardConfigVendor.mk
TARGET_NO_BOOTLOADER := true
TARGET_BOARD_PLATFORM := unknown
TARGET_CPU_ABI := armeabi
TARGET_BOOTLOADER_BOARD_NAME :=roamer  //此处一版为device
# 此处为打包 boot.img 的信息,可以通过厨房 查看到,我模糊的记得用厨房解压boot.img的时候的选项应该是  打开厨房,选择0高级,然后选择 20,再选择  S  就能看到下面这三个信息了
# dev:    size    erasesize    name
# mtd0: 00600000 00020000 "recovery"
# mtd1: 00400000 00020000 "boot"
# mtd2: 00180000 00020000 "splash"
# mtd3: 00080000 00020000 "misc"
# mtd4: 03980000 00020000 "cache"
# mtd5: 0dc00000 00020000 "system"
# mtd6: 0a280000 00020000 "userdata"
# mtd7: 00100000 00020000 "oem"
# mtd8: 00180000 00020000 "persist"
BOARD_BOOTIMAGE_PARTITION_SIZE        :=0x00500000
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x00600000
BOARD_SYSTEMIMAGE_PARTITION_SIZE    := 0x0dc00000
BOARD_USERDATAIMAGE_PARTITION_SIZE := 0x0a280000
BOARD_FLASH_BLOCK_SIZE := 131072
# 内核路径
TARGET_PREBUILT_KERNEL := device/zte/roamer/kernel
#一般情况下,手机没有实体返回键,建议选择这一项,有的手机触摸返回键在recovery下面不能使用的,比如小米手机。
BOARD_HAS_NO_SELECT_BUTTON := true# 编译recovery 指定 keymap 文件,看参数名称就知道了,不懂的可以google翻译
device_roamer.mk这个是编译recovery的时候我写的,有些东西可以不要,以后编译rom的时候需要删除重写的
#语言配置文件
$(call inherit-product,$(SRC_TARGET_DIR)/product/languages_full.mk)

# The gps config appropriate for thisdevice    gps配置文件
$(call inherit-product, device/common/gps/gps_as_supl.mk)
# vendor 私有库配置文件
$(call inherit-product-if-exists,vendor/zte/roamer/roamer-vendor.mk)
#有些你需要对应用 或者 framework 进行初始化设定值的地方
DEVICE_PACKAGE_OVERLAYS += device/zte/roamer/overlay

#kernel路径选择
ifeq ($(TARGET_PREBUILT_KERNEL),)
LOCAL_KERNEL :=device/zte/roamer/kernel
else
LOCAL_KERNEL :=$(TARGET_PREBUILT_KERNEL)
endif

PRODUCT_COPY_FILES += \
   $(LOCAL_KERNEL):kernel

$(call inherit-product,build/target/product/full.mk)

PRODUCT_BUILD_PROP_OVERRIDES +=BUILD_UTC_DATE=0
PRODUCT_NAME :=full_roamer
PRODUCT_DEVICE := roamer
recovery.fastab 官方recovery.img提取 自己想个办法,我用厨房提取的

全部写好之后 在源码根目录   用终端输入   .build/envsetup.sh   然后输入lunch  选择你的设备
然后输入   make recoveryimage  就可以编译了
编译结束之后,到out/target/product/roamer目录下面可以发现 recovery.img这个文件

使用fastboot 工具到fastboot 模式下面刷写,刷写命令为 fastboot flash recoveryrecovery.img

教程到此结束,有关如何进入fastboot模式 recovery模式,还有fastboot工具使用,请google 或者baidu
谢谢

mtk解包打包,移植recovery超详细说明小白都会用 立即下载

相关推荐

手把手教你用scATAC-seq分析拟南芥根尖染色质可及性(附代码实战)

本文详细介绍了使用scATAC-seq技术分析拟南芥根尖染色质可及性的完整流程,涵盖从实验设计、数据质控、细胞分群到差异分析和多组学整合的实战步骤。通过具体的代码示例,帮助植物研究者掌握单细胞表观组学分析的核心方法,揭示细胞异质性和基因调控动态。

weixin_29291185的博客 265

android系统移植培训,Android系统之Recovery移植教程 【转】

recovery的移植,这方面的资料真实少之又少啊,谷歌了几天,文章也就那几篇而已,更别提国内的资料了。你让我们热爱学习的小白情何以堪。于是乎就开始动手了,编译的过程中,自己做了一些随笔的记录。把自己遇到的一些问题和解决办法都记录了下了,放在自己的笔记里了。今天整理出来,和大家共享一下。本教程是针对有一定基础的人。如果你不会Ubuntu,不会环境的搭建。那你还是先学习一下吧。装Ubuntu各种各样...

weixin_39593354的博客 463

DCDC--控制方式(Control Mode)

DCDC反馈控制方式

网始如芯个人博客 1万+

android 自编译 img,【Q我吧。】无需源码,编译recovery.img教程

该楼层疑似违规已被系统折叠隐藏此楼查看此楼###自制recovery####接着开始自制recovery吧,下面步骤:1。从官方包,解压出原生的recovery.img。2。按照上面解img 的方法,解出原生recovery包的内核recovery.img-kernel 和ramdisk 内存镜像,再把ramdisk内存镜像解包,我们要在这个基础上作修改。3。找到合适的功能比较好的第三方reco...

weixin_32394247的博客 754

深入解析MTK DRM初始化流程:从KMS模块到组件框架

本文深入解析了联发科(MTK)平台上DRM显示框架的初始化流程。从内核模块加载、Component框架管理依赖,到核心的mtk_drm_bind函数构建KMS对象(CRTC、Plane、Encoder、Connector),最终完成DRM设备注册并创建用户空间接口。文章结合调试经验,为开发者梳理了从驱动启动到屏幕点亮的完整路径与关键排查点。

onion的博客 765

用LTspice仿真CMOS反相器功耗?这份避坑指南能省你3天调试时间

本文详细介绍了如何使用LTspice准确仿真CMOS反相器的功耗,包括动态功耗、短路功耗和静态功耗的测量技巧。通过工程实践指南,帮助电子工程师避开常见陷阱,优化仿真参数设置,提升仿真结果的可靠性,节省调试时间。

w7x8y9z的博客 188

cm源码下载和源码结构介绍,recovery的编译。

cm源码下载和源码结构介绍,recovery的编译。

azsx02的博客 1205

AIDD机器学习深度学习药物发现与设计教程总结

AIDD(AI Drug Discovery & Design):是近年来非常火热的技术应用,且已经介入到新药设计到研发的大部分环节当中,为新药发现与开发带来了极大的助力。倾向于机器对数据库信息的自我学习,可以对数据进行提取和学习,一定程度上避免了化合物设计过程中的试错路径,同时还会带来很多全新的结构,为药物发现打破常规的结构壁垒。覆盖了机器学习和深度学习,能与新药研发相结合并实质性的应用到靶点预测、高通量筛选、药物设计、药物的ADMET性质预测等;且算力方面,由早期应用于药物发现领域的决策树、随机

wutianlin0723的博客 6815

HTC G14刷机教程!HTC Sensation G14 RECOVERY,ROOT教程!HTC G14解锁教程!G14 ROOT教程!S-OFF教程!!

HTC Sensation G14完全版ENG S-OFF,RECOVERY,ROOT教程 (转自机锋网) 首先,感谢各论坛技术高手的帖子。还要感谢机锋QQ3群,4群,1群的兄弟姐妹们。嗯,下面正题。此贴专为安卓新手,小白所开,总结各方经验和自己的经验,玩机高手轻拍,如有不对请指正,谢谢! 本贴6个附件HTC G14刷机工具打包下载:http://dl.dbank.com/c0womwso

IamValen的程序之旅 6341

12-RK平台U-Boot启动流程

先看概述,把这一章要回答的问题摆出来,带着问题听。RK 特有的 BootROM -> MiniLoader -> SPL -> U-Boot -> Kernel。这是因为 RK 平台使用闭源的 DDR 初始化固件,需要通过 MiniLoader 来加载和运行。为什么多一层?这是 RK 平台的特殊性决定的。RK 平台使用闭源的 DDR 初始化固件,这段代码 Rockchip 不开源,只能以二进制形式提供,它需要一个载体来加载和运行,这个载体就是 MiniLoader。

内核笔记 1146

22、狭义相对论与曲线坐标空间相关知识解析

本文深入解析了狭义相对论与曲线坐标空间的核心概念,涵盖能量-动量张量的定义与守恒、曲线坐标系下的度量张量与基向量性质、协变与逆变张量的变换规则,并介绍了克里斯托费尔符号与协变导数的计算方法。进一步探讨了在弯曲空间中进行微积分运算的基础理论及其在广义相对论中的关键应用,如爱因斯坦场方程如何描述物质-能量对时空曲率的影响,为理解黑洞等引力现象提供了理论框架。

lambda的博客 115

编译cwm-recovery(含部分修改步骤)[转]

1. 同步cm10.1的源码,具体操作请百度之~~ 2. 打开终端,到源码目录下: cd Android/cm10.1 //我的源码目录 3. 如果不想使用cm10.1的英文源码,可以按如下操作获取我的recovery汉化源码:(如不需要,请直接下一步!) rm -rf bootable/recovery //删除原来的cm...

weixin_30872157的博客 285

Spring AI 项目实战(五):Spring Boot + AI + DeepSeek + Redis 实现聊天应用上下文记忆功能(附完整源码)

本文介绍了如何基于Spring Boot 3.2、Spring AI 1.0.0-M4、DeepSeek API和Redis构建具备上下文记忆功能的智能聊天应用。项目采用现代化技术栈,包括Java 17、Maven、Lombok等,实现了智能对话、会话管理、异常处理等核心功能。文章详细讲解了环境搭建、配置管理(含Redis和AI服务集成)、核心组件设计(如消息实体、控制器和服务层实现),以及完整的项目结构。该项目提供了美观的Web界面和REST API,支持对话上下文存储(通过Redis实现)和系统监控,可

博客 829

CyanogenMOD移植教程]

前言:什么是CyanogenMOD 借鉴百度百科的介绍:http://baike.baidu.com/view/5079569.htm CyanogenMod(发音:sigh-AN-oh-jen-mod。简称cm): Cyanogen团队是目前全球最大的Android第三方编译团队,其发布的Android 2.1内核CM5系列ROM被广泛使用,促进了用户从Android 1.6到Androi

hellolinshoujie的专栏 4182

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

CyanogenMod 官方移植指南

1、移植 CyanogenMod 到自己的设备的一些技巧 2、前提 3、收集有关设备的信息 3.1 查看当前设备的 /system/ build.prop 3.2 检查的 boot.img 和 recovery.img 3.3 收集任何可用现有的源代码 3.4 确定分区方案 4、建立三个新目录 4.1 方法 1:使用 mkvendor.sh 生成框架文件 4.2 方法 2:查找与

insert0003的专栏 891

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Port CyanogenMod to Mi2

http://wiki.cyanogenmod.org/w/Build_for_mako 这个和m2用的一样的soc。 https://github.com/CyanogenMod/android_device_lge_mako/blob/cm-10.1/extract-files.sh https://android.googlesource.com/device/lge/mak...

fkpwolf 307

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Android ROM移植

我们关注的Android ROM的移植是从源码级别的编译,但是从零开始从AOSP源码中编译出能在自己使用的手机上运行的系统,却不是一件容易的事情,因为Google所提供的支持的机型太少。不过,我们可以利用现成的第三方ASOP开源项目来进行我们的Android ROM移植,他们已经适配了大量的第三方机型,并且也进行了自己的优化。最著名的第三方开源项目就是CyanogenMod,国内的小...

bantaoxun4330的博客 401

如何将CM android移植到你的设备(二)

(一):写在前面在上面一个小节当中,我们学习了将CM移植到我们自己的设备的上半部分,这里,我们将下半部分学习一下,并尝试讲CM移植到一个平板上去。(二):承接上文device_[codename].mk文件device_[codename].mk包含关于构建哪一个Android包,去哪里复制指定文件和包或者是在整个编译阶段要设置的指定属性等的指令。该文件可以在编译阶段被用来讲重要文件复制到ramdi

hongbochen1223的专栏 2853

CyanogenMod×××和编译以及简单修改

android本身自带了bootloader,这部分不是一般的工具能够烧录的,市面上的所谓定制rom,刷rom一般都是基于bootloader已经启动了,同时运行了recovery 这个程序以后,然后解压缩/sdcard/update.zip这个压缩包的。 所以,刷rom的时候,android手机的基本N多驱动都已经运行好了,屏幕能亮,usb能够通信,flash...

weixin_34249367的博客 163

如何讲CM Android移植到你的设备?

版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.youkuaiyun.com/hongbochen1223/article/details/50343621 关于将cm android移植到你的设备上的一些技巧 你可能会遇...

weixin_33842328的博客 167

Lenovo k860i 移植Android 4.4 cm11进度记录【上篇已完结】

2014.5.16 为了验证一下下载的CM11的源码有没有问题,决定编译一下cm官方支持的机器,手上正好有台nexus7 2012,就拿它为例测试一下在mac os x平台的整个编译过程。 1. 最开始,是在os x下面搭编译环境,以前有说过的,详见xda这个帖子。http://forum.xda-developers.com/showthread.php?t=2510898 这个...

weixin_30399055的博客 509

嵌入式安卓编程指南(二)

在上一章中,我们创建并部署了我们自己的第一个自定义 Android 版本。我们为商业智能手机 Google Nexus 6 创建了一个版本,并为开发板 Udoo Quad 创建了一个更硬核的版本。我们学习了更多开发工具,如 ADB 和 Fastboot。我们专注于调试工具,掌握串行连接和引导序列。在本章中,我们将深入系统——从内核定制到引导序列。您将学习如何获取谷歌设备的正确源代码,如何设置构建环境,如何构建您的第一个自定义 Linux 内核版本,并将其部署到您的设备上。您将了解:工具链概述。

龙哥盟 2102

(half OK) 在VirtualBox中运行 cm-13-kiwi (华为 荣耀 5X) - 移植cm-13-kiwi

(half OK) 在VirtualBox中运行 cm-13-kiwi (华为 荣耀 5X) - 移植cm-13-kiwi

张同光 (Tongguang Zhang):Hello everyone ! 5168

如何编译CWM Recovery

原文链接:http://forum.xda-developers.com/showthread.php?t=1866545 你必须使用32位或64位Ubuntu系统,关于如何建立编译环境和同步源码的指导,请自己查找有关指导的文章。 1, 安装所需要的包 2, 建立编译的环境,并同步CWM所需的源码,CyanogenMod源码中附带CWM源码 CWM 5 - Gin...

weixin_34119545的博客 314
上一篇: Android系统在超级终端下必会的命令大全(adb shell命令大全)
下一篇: 为Android加入busybox工具(三篇)
Pansing
博客等级 码龄15年 30粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值