[發(fā)明專利]補丁生成方法、裝置、設(shè)備及存儲介質(zhì)有效
| 申請?zhí)枺?/td> | 202011543282.1 | 申請日: | 2020-12-23 |
| 公開(公告)號: | CN112631640B | 公開(公告)日: | 2022-11-04 |
| 發(fā)明(設(shè)計)人: | 宋玉成 | 申請(專利權(quán))人: | 蘇州三六零智能安全科技有限公司 |
| 主分類號: | G06F8/656 | 分類號: | G06F8/656;G06F8/71;G06F8/53 |
| 代理公司: | 深圳市世紀(jì)恒程知識產(chǎn)權(quán)代理事務(wù)所 44287 | 代理人: | 薛福玲 |
| 地址: | 215000 江蘇省蘇州市蘇州工業(yè)*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 補丁 生成 方法 裝置 設(shè)備 存儲 介質(zhì) | ||
本發(fā)明涉及計算機技術(shù)領(lǐng)域,公開了一種補丁生成方法、裝置、設(shè)備及存儲介質(zhì),該方法包括:獲取待更新文件與更新文件,并獲取所述待更新文件與所述更新文件的區(qū)別信息;根據(jù)所述區(qū)別信息獲取目標(biāo)程序包;對所述目標(biāo)程序包進行反編譯,并根據(jù)所述區(qū)別信息與反編譯結(jié)果獲取目標(biāo)區(qū)別代碼;對所述目標(biāo)區(qū)別代碼進行反射處理,以生成反射代碼;根據(jù)預(yù)設(shè)補丁模板代碼與所述反射代碼生成補丁。本發(fā)明通過獲取更新文件與待更新文件的區(qū)別信息,進而根據(jù)區(qū)別信息得到程序包進行反編譯,以生成補丁。提升了熱修復(fù)過程中補丁生成的效率,節(jié)省了補丁生成的時間。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種補丁生成方法、裝置、設(shè)備及存儲介質(zhì)。
背景技術(shù)
目前,應(yīng)用程序修復(fù)主要有迭代修復(fù)、熱修復(fù)等方式,迭代修復(fù)是獲取下一版本的安裝包,并重新安裝以修復(fù)當(dāng)前版本的bug;而熱修復(fù)是通過補丁更新,及時進行修復(fù),熱修復(fù)可以在系統(tǒng)正常運行的狀態(tài)下,將補丁應(yīng)用到處于生產(chǎn)狀態(tài)(非開發(fā)狀態(tài))的系統(tǒng)。為提升熱修復(fù)的效率,需要快速便捷的補丁生成方法。
上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種補丁生成方法、裝置、設(shè)備及存儲介質(zhì),旨在解決現(xiàn)有技術(shù)中補丁生成效率較低的技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明提供一種補丁生成方法,所述補丁生成方法包括以下步驟:
獲取待更新文件與更新文件,并獲取所述待更新文件與所述更新文件的區(qū)別信息;
根據(jù)所述區(qū)別信息獲取目標(biāo)程序包;
對所述目標(biāo)程序包進行反編譯,并根據(jù)所述區(qū)別信息與反編譯結(jié)果獲取目標(biāo)區(qū)別代碼;
對所述目標(biāo)區(qū)別代碼進行反射處理,以生成反射代碼;
根據(jù)預(yù)設(shè)補丁模板代碼與所述反射代碼生成補丁。
可選地,所述獲取待更新文件與更新文件,并獲取所述待更新文件與所述更新文件的區(qū)別信息的步驟,具體包括:
獲取待更新文件與更新文件,并通過語法解析工具對所述待更新文件與所述更新文件進行分析,以獲取區(qū)別代碼及所述區(qū)別代碼對應(yīng)的區(qū)別位置;
將所述區(qū)別代碼及所述區(qū)別位置作為所述區(qū)別信息。
可選地,所述根據(jù)所述區(qū)別信息獲取目標(biāo)程序包的步驟,具體包括:
根據(jù)所述區(qū)別代碼及所述區(qū)別位置確定對應(yīng)的區(qū)別文件,并根據(jù)所述區(qū)別文件獲取對應(yīng)的目標(biāo)程序包。
可選地,所述對所述目標(biāo)程序包進行反編譯,并根據(jù)所述區(qū)別信息與反編譯結(jié)果獲取目標(biāo)區(qū)別代碼的步驟,具體包括:
獲取所述目標(biāo)程序包的原代碼集合,并對所述原代碼集合進行反編譯,以生成反編匯代碼集合,將所述反編匯代碼集合作為反編譯結(jié)果;
根據(jù)所述區(qū)別信息對所述反編匯代碼合集進行檢索,以獲取目標(biāo)區(qū)別代碼。
可選地,所述獲取所述目標(biāo)程序包的原代碼集合,并對所述原代碼集合進行反編譯,以生成反編匯代碼集合,將所述反編匯代碼集合作為反編譯結(jié)果的步驟,具體包括:
獲取所述目標(biāo)程序包的java代碼集合,并將所述java代碼集合反編譯為smali代碼集合,將所述smali代碼集合作為反編譯結(jié)果。
可選地,所述根據(jù)所述區(qū)別信息對所述反編匯代碼合集進行檢索,以獲取目標(biāo)區(qū)別代碼的步驟,具體包括:
根據(jù)區(qū)別信息獲取為java代碼的區(qū)別代碼及所述區(qū)別代碼對應(yīng)的區(qū)別位置,并通過所述區(qū)別代碼及所述區(qū)別位置對所述smali代碼集合進行檢索,獲取為smali代碼的目標(biāo)區(qū)別代碼。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于蘇州三六零智能安全科技有限公司,未經(jīng)蘇州三六零智能安全科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011543282.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





