[发明专利]一种安卓系统固件源代码还原方法及存储介质有效
申请号: | 201810238074.7 | 申请日: | 2018-03-22 |
公开(公告)号: | CN108563444B | 公开(公告)日: | 2021-03-19 |
发明(设计)人: | 陈伟 | 申请(专利权)人: | 瑞芯微电子股份有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/65;G06F11/14 |
代理公司: | 福州市景弘专利代理事务所(普通合伙) 35219 | 代理人: | 林祥翔;徐剑兵 |
地址: | 350003 福建省*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 系统 源代码 还原 方法 存储 介质 | ||
一种安卓系统固件源代码还原方法及存储介质,其中方法包括步骤,保存固件源代码根目录下的.repo/manifests目录的仓库信息,所述仓库信息包括.repo/manifests目录远端仓库地址信息、分支名信息以及manifest文件名;保存固件源代码根目录下所有子仓库的提交信息为本地仓库提交信息文件,所述提交信息包括子仓库的远端仓库地址信息、子仓库的分支名信息以及子仓库的本地提交号;以满足在系统固件的设计过程中需要提取编译状态进行还原修改的问题。
技术领域
本发明涉及安卓系统设计领域,尤其涉及一种安卓系统固件源代码还原方法。
背景技术
目前编译出来的Android固件并不包含是从哪份源代码编译出来的信息。客户将这样的固件烧录进设备后,一旦出现问题,无从考证代码状态。基于这个现状,本发明提出一种能够从Android固件中还原此固件的源代码的方法,用来帮助问题的处理。处理该问题的研发人员,能够从固件文件或者烧录到设备上的固件中提取它所对应的源码状态信息,进而还原出相同的测试环境复现问题,有益于问题的处理。
为实现从Android固件中还原此固件的源代码的方法,需要从固件生成方式上入手,在编译时收集必要的当前代码状态信息,并保存到固件中。当需要确认该固件所对应的源代码时,可以从固件文件或者已经烧录了该固件的设备上提取当时编译的代码状态信息,进而将当时的代码状态完整还原出来。
发明内容
为此,需要提供一种安卓系统固件代码的还原方法,以满足在系统固件的设计过程中需要提取编译状态进行还原修改的问题;
为实现上述目的,发明人提供了一种安卓系统固件源代码还原方法,包括步骤,保存固件源代码根目录下的.repo/manifests目录的仓库信息,所述仓库信息包括.repo/manifests目录远端仓库地址信息、分支名信息以及manifest文件名;保存固件源代码根目录下所有子仓库的提交信息为本地仓库提交信息文件,所述提交信息包括子仓库的远端仓库地址信息、子仓库的分支名信息以及子仓库的本地提交号;保存固件源代码根目录下所有子仓库与其对应的远端仓库的差异代码信息,所述差异代码信息包括子仓库所跟踪的远端仓库分支名、子仓库与子仓库所跟踪的远端仓库的合并基准点提交号、子仓库与子仓库所跟踪的远端仓库的差异代码,分别将结果输出到带有子仓库目录名信息的文件夹;
将上述代码状态信息保存至代码状态信息集文件夹,再将文件夹压缩后集成到安卓编译系统,生成第一代码状态信息集保存进固件;
在需要还原固件源代码时,从固件中分离所述第一代码状态信息集,根据第一代码状态信息集,下载.repo/manifests文件夹所对应的远端仓库的最新内容,替换默认指向的manifest.xml为本地仓库提交信息文件,将本地仓库提交信息文件中的本地提交号改为差异代码信息中的合并基准点提交号,进而通过reposync还原出未打上差异代码补丁的源代码;遍历第一代码状态信息集当中的差异代码文件夹,将差异代码合并入源代码,即可完整还原出固件对应的源代码。
进一步地,还包括步骤,
遍历固件源代码工程中所有由manifest管理的git代码仓库,收集子仓库所跟踪的远端仓库分支名、子仓库与子仓库所跟踪的远端仓库的合并基准点提交号、子仓库与子仓库所跟踪的远端仓库的差异代码,分别将结果输出到带有子仓库目录名信息的文件夹;
将所述第一代码状态信息集压缩为代码状态信息集压缩包,集成进安卓固件中。
具体地,保存固件源代码根目录下所有子仓库与其对应的远端仓库的差异代码信息具体包括步骤,
判断当前仓库是否为未修改的AOSP仓库,若否,即修改过AOSP代码或者引进的新仓库,还进行下述步骤:
找出本地已提交但未上传或合并进远端代码仓库的提交集,然后记录该仓库的远端仓库地址和指向的分支名,找出本地提交与远端代码仓库的合并基准点并将其记录;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于瑞芯微电子股份有限公司,未经瑞芯微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810238074.7/2.html,转载请声明来源钻瓜专利网。