当前位置:首页 > 体育

安卓rom 教你制作定制版安卓系统(Android ROM)

对玩电脑游戏感兴趣的安卓发烧友应该对自定义ROM比较熟悉,大致相当于Ghost(*。gho)文件用于我们定制的pc系统。在介绍根权限获取时,直接以MoDaCo自定义ROM为例。《英雄》有很多好的ROM,比如崔西定制的英雄ROM,可以在XDA上找到。肯定有很多朋友很好奇这些rom是怎么做出来的。考虑到关于华人社区的信息很少,我在这里介绍一些原则。

对于第三方ROM,通常包括两个部分,一个是recoveryimage,一个是update.大多数第三方ROM的特点是增加了很多东西,比如超级用户程序获取根权限,busybox扩展命令行下的功能,各种配置文件或者小工具,比如默认打开中文区域设置等等。这些看似神奇的变化都是在update.中做的,自定义recoveryimage的主要功能是指导用户操作,比如让你先备份,然后应用update.,然后重启。由于自定义recoveryimage和update.之间的耦合非常小,所以许多自定义ROM直接使用同一个自定义recoveryimage,这似乎来自于MoDaCo的作者。然后,我之前的文章已经对recoveryimage做了简单的说明,所以在这里,我主要介绍一下update.的制作

如果我们直接把MoDaCoROM中的update.解包,我们会发现有一个boot.img,一个data文件夹,一个system文件夹,一个META-INF文件夹。这个data文件夹放的是init.rc,而本来在系统中,init.rc就是在data目录下的。当然,两者的作用不一样,这里的init.rc主要作用是开机执行你希望执行的命令,比如MoDaCo的init.rc就是install busybox。如果我们直接在MoDaCoROM中解包update.,会发现有一个boot.img,一个数据文件夹,一个系统文件夹,一个META-INF文件夹。此数据文件夹包含init.rc,它最初位于系统的数据目录中。当然,两者的作用是不同的。这里init.rc的主要功能是启动并执行你想执行的命令。比如MoDaCo的init.rc就是安装busybox。

系统文件夹值得详细说明。有一系列的工具,作者希望放在系统的MoDaCoROM版本下的系统中。对于apk文件,放在app里,工具放在bin和xbin里,等等。换句话说,系统或数据的目录层次取决于你自己。你想放什么,在线系统应该运行哪个目录?update.中应该有对应的目录路径,然后东西就会放进去。

具体来说,我们将创建一个新的update.,所以第一步是首先创建一个文件夹。

mkdir新建-更新

好了,我们假设我的新update.的功能是预装一个我自己的程序,my.apk,然后我会建立相应的子目录

mkdir -p new-update/system/app

cp my.apk!$

这样,系统目录就完成了。但是这个时候,update.的目录层次结构还没有完成。我们看到在MoDaCoROM的update.中有一个名为META-INF的文件夹。这个文件夹很关键。除了根目录下的三个文件之外,目录中的层包括一个名为update-的文件,如下所示

show_progress 0.1 0

复制目录包:系统系统:

set _ perm _ recursive 0 0 0755 0644 SYStem:xbin

set _ perm _ recursive 0 0 0755 0644 SYStem:SD

set_perm 0 0 04755系统:bin/su

set_perm 0 0 04755 SYSTEM:bin/a2sd

set_perm 0 0 04755系统:xbin/busybox

复制目录包:数据数据:

show_progress 0.2 0

格式化BOOT:

write_raw_image PACKAGE:boot.img BOOT:write _ raw _ image PACKAGE:BOOT . img BOOT:

show_progress 0.2 10

大多数内容都是为您想要进行的修改而设置的。例如

复制目录包:系统系统:

就是把系统里的新工具复制到手机上,然后

set _ perm _ recursive 0 0 0755 0644 SYStem:xbin

set _ perm _ recursive 0 0 0755 0644 SYStem:SD

set_perm 0 0 04755系统:bin/su

set_perm 0 0 04755 SYSTEM:bin/a2sd

set_perm 0 0 04755系统:xbin/busybox

就是在MoDaCo ROM中设置新程序的权限,然后

复制目录包:数据数据:

将数据下的内容(即init.rc)复制到手机上,然后

格式化BOOT:

write_raw_image PACKAGE:boot.img BOOT:write _ raw _ image PACKAGE:BOOT . img BOOT:

刷开机分区。

那我们这里就没那么多新东西了。应该怎么写?

复制目录包:系统系统:

set _ perm _ recursive 0 0 04755 SYSTEM:app/my . apk

够了。当然,您可以做其他事情,比如添加一个格式化数据。开个玩笑,别这样,不然你的数据就没了。

好了,也就是说我们也要在自己的新更新目录下建立一个/META-INF/com/google/目录,然后抛出新的更新插件。

完了么?差一点。其实如果你没有别的需求了,那么就完了,可以把下面这一小块跳过。下面这一小块,是关于boot.img的。在如何修改Android系统的Ramdisk以及boot镜像文章中,我们谈到,如果刷boot镜像有问题,就要用别的方法让系统boot我们自己的bootimage了,这个别的方法,自然就是用update.了。MoDaCoROM版本的update.也包括了一个boot.img,但是如果我们有出于各种需求自己修改的boot.img,自然就可以替换掉原来的了。当然注意,如果加了boot.img,那么update-里面就不能漏掉结束了吗?差不多。其实如果你没有其他需求,那就结束了。你可以跳过下面的一小段。下面的小块是关于boot.img的,在关于如何修改Android系统的Ramdisk和bootimage的文章中,我们谈到如果刷boot image有问题,就要用其他方法让系统引导自己的引导映像,而这个其他的方法自然是用update. Update.的MoDaCoROM版本也包含了一个boot.img,但是如果我们有自己为了各种需要修改的boot.img,自然可以替换原来的。当然,如果添加boot.img,在update-中是不会错过的。

write_raw_image PACKAGE:boot.img BOOT:write _ raw _ image PACKAGE:BOOT . img BOOT:

这句话。

好的,到目前为止,我们在新的更新目录中有它

/system/app/my.apk

/META-INF/com/google/update-

/META-INF/MANIFEST。中频

/META-INF/CERT。芬兰

/META-INF/CERT。南非共和国(Republic of South Africa)

boot.imgboot.img

好吧,那就去打包阶段。你可能会问,为什么这么难?拉上拉链。要是这么简单就好了,你打包好之后,一定要把你所有的内容都签名,拿到相应的证书,这样就可以在fastboot模式下识别并成功刷了。

在签署你的文件之前,先做这些事情

打包。进入更新文件夹, update . xxxxxxxxxxxxxxxxxxxxxx什么意思,把需要的文件打包就行了,不用了。/*作为参数。而且相对路径最好在update下,不要用update.命令包在外面。/update/*

到sun网站下载最新的jre

下载此文件测试签名

一定要用JRE1.6.0.16或者更高的版本,我知道这有点恶心,但是提供下载的test suggest . jar是根据这个版本或者更高版本编译的,不能用旧版本运行。

好,下来后,执行这个命令

~/JRE 1 . 6 . 0 _ 16/bin/Java-class path test sign _ path/test sign . jar test sign update . update-signed .

稍微解释一下,java程序在最新的jre下,testsign_path就是你放testsign.jar的地方,建议放在sdk的工具目录下。Update是要签名的文件,update-signed是指定的生成文件名。

在sign被执行之后,看看un -l,你会发现

/META-INF/MANIFEST。中频

/META-INF/CERT。芬兰

/META-INF/CERT。南非共和国(Republic of South Africa)

三个文件的日期属性已经改变。我怀疑这三个文件已经重新生成了。但是,如果这三个文件在以前的打包中没有被签名,它们在签名后将不会被新生成。因为不关心大局,所以没有仔细研究,有个明确的朋友求教。

好了,现在把自己的update.放在sd卡上,在fastboot下通过恢复镜像引导,执行update.,然后享受自己的修改结果:)

最后,在进行任何类似操作之前,请备份您的手机。此方法仅供参考,由此造成的任何损害我概不负责。

1.《安卓rom 教你制作定制版安卓系统(Android ROM)》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《安卓rom 教你制作定制版安卓系统(Android ROM)》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/tiyu/1543823.html

上一篇

电视剧完美关系 同一个导演的两部大剧,《完美关系》和《安家》天差地别

下一篇

知交卡 别让手机NFC成为摆设!很多人只知道公交卡,其实还有5个强大用途

输煤设备 火力电厂输煤系统设备

  • 输煤设备 火力电厂输煤系统设备
  • 输煤设备 火力电厂输煤系统设备
  • 输煤设备 火力电厂输煤系统设备

什么是电力系统 什么是电力系统?

什么是动力系统?  输送电力 将电能传输到远处的环节  能量转换 等效提高或降低电能和电压的环节  配电 向用户分配电能的环节 耗电 消耗电能的环节 发电概述 发电是指利用发电将水能、石化燃料(煤、石油、天然气)热能、...

蝙蝠的免疫系统 蝙蝠是5千万年前远古物种,有独特免疫系统,进化最成功生物之一

  • 蝙蝠的免疫系统 蝙蝠是5千万年前远古物种,有独特免疫系统,进化最成功生物之一
  • 蝙蝠的免疫系统 蝙蝠是5千万年前远古物种,有独特免疫系统,进化最成功生物之一
  • 蝙蝠的免疫系统 蝙蝠是5千万年前远古物种,有独特免疫系统,进化最成功生物之一
蝙蝠是什么进化来的 蝙蝠是5千万年前远古物种,有独特免疫系统,进化最成功生物之一

蝙蝠是什么进化来的 蝙蝠是5千万年前远古物种,有独特免疫系统,进化最成功生物之一

在动物界,有一种说法叫“鸟兽”,但蝙蝠是进化中最成功的生物之一。蝙蝠进化成了会飞的野兽。同时,世界上有900多种蝙蝠,是仅次于啮齿动物的第二大哺乳动物。它分布广泛,几乎遍布世界各地,除了一些位于极地和海洋的岛屿。蝙蝠是...

扫把星图片 姜子牙封神时,为何给自己的妻子封为“扫把星”?说起来都是泪

  • 扫把星图片 姜子牙封神时,为何给自己的妻子封为“扫把星”?说起来都是泪
  • 扫把星图片 姜子牙封神时,为何给自己的妻子封为“扫把星”?说起来都是泪
  • 扫把星图片 姜子牙封神时,为何给自己的妻子封为“扫把星”?说起来都是泪

健康系统 腾讯游戏健康系统只是“说说而已”吗?

  • 健康系统 腾讯游戏健康系统只是“说说而已”吗?
  • 健康系统 腾讯游戏健康系统只是“说说而已”吗?
  • 健康系统 腾讯游戏健康系统只是“说说而已”吗?

学生报名系统 小学新生报名系统操作手册

  • 学生报名系统 小学新生报名系统操作手册
  • 学生报名系统 小学新生报名系统操作手册
  • 学生报名系统 小学新生报名系统操作手册

赵匡胤为什么不传子 宋太祖赵匡胤,为什么不传位于自己的儿子,而将皇位传于自己的弟弟?

  • 赵匡胤为什么不传子 宋太祖赵匡胤,为什么不传位于自己的儿子,而将皇位传于自己的弟弟?
  • 赵匡胤为什么不传子 宋太祖赵匡胤,为什么不传位于自己的儿子,而将皇位传于自己的弟弟?
  • 赵匡胤为什么不传子 宋太祖赵匡胤,为什么不传位于自己的儿子,而将皇位传于自己的弟弟?