[發明專利]一種可執行文件重布局方法、裝置和電子設備有效
| 申請號: | 201710881964.5 | 申請日: | 2017-09-26 |
| 公開(公告)號: | CN109558144B | 公開(公告)日: | 2022-03-22 |
| 發明(設計)人: | 楊琦;張康宗 | 申請(專利權)人: | 北京金山安全軟件有限公司 |
| 主分類號: | G06F8/61 | 分類號: | G06F8/61;G06F8/71;G06F9/455 |
| 代理公司: | 北京柏杉松知識產權代理事務所(普通合伙) 11413 | 代理人: | 馬敬;項京 |
| 地址: | 100085 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 可執行文件 布局 方法 裝置 電子設備 | ||
本發明實施例提供了一種可執行文件重布局方法、裝置和電子設備。該方法包括:確定待進行可執行文件重布局的應用程序安裝包;對應用程序安裝包進行解壓,得到虛擬機可執行文件;基于預設的配置文件,將虛擬機可執行文件中的、每個進程對應的源碼放入該進程的專用虛擬機可執行文件中,得到重布局虛擬機可執行文件;配置文件中記錄有:應用程序安裝包對應的應用程序中的進程和源碼的對應關系;對重布局虛擬機可執行文件進行編譯和壓縮,得到可執行文件重布局后的應用程序安裝包。應用本發明實施例,可以對應用程序安裝包中的可執行文件進行重布局,使得當基于該應用程序安裝包安裝得到的應用程序的進程運行時,可以減少內存的占用。
技術領域
本發明涉及計算機技術領域,特別是涉及一種可執行文件重布局方法、裝置和電子設備。
背景技術
目前,常常需要通過APK(Android Package,安卓安裝包),即應用程序安裝包,將APP(Application,應用程序)安裝到用戶終端。其中,對于代碼量較大的APP而言,該APP對應的APK中會包含多個虛擬機可執行文件,例如classes.dex文件,而每個classes.dex文件中會包含該APP的源碼。
由于在現有技術中,在將該APP的源碼封裝為classes.dex文件時,會把該APP的多個進程中每個進程的源碼分散到多個classes.dex文件中,使得每個classes.dex文件中會包含多個進程的源碼。這種布局情況下,當該APP的一個進程運行時,需要加載多個classes.dex文件進內存,導致內存被過多的占用。
發明內容
本發明實施例的目的在于提供一種可執行文件重布局方法、裝置和電子設備,以實現對應用程序安裝包中的可執行文件進行重布局,使得當基于該應用程序安裝包安裝得到的應用程序的進程運行時,減少對內存的占用。
第一方面,本發明實施例提供了一種可執行文件重布局方法,該方法可以包括如下步驟:
確定待進行可執行文件重布局的應用程序安裝包;
對應用程序安裝包進行解壓,得到虛擬機可執行文件;
基于預設的配置文件,將虛擬機可執行文件中的、每個進程對應的源碼放入該進程的專用虛擬機可執行文件中,得到重布局虛擬機可執行文件;其中,配置文件中記錄有:應用程序安裝包對應的應用程序中的進程和源碼的對應關系;每個進程為:應用程序安裝包對應的應用程序中的進程;其中,一個進程與一個專用虛擬機可執行文件一一對應;
對重布局虛擬機可執行文件進行編譯和壓縮,得到可執行文件重布局后的應用程序安裝包。
可選地,基于預設的配置文件,將虛擬機可執行文件中的、每個進程對應的源碼放入該進程的專用虛擬機可執行文件中,得到重布局虛擬機可執行文件的步驟,可以包括:
確定應用程序中的每個進程對應的、相同的公共源碼;
將公共源碼放入公共源碼虛擬機可執行文件;
基于預設的配置文件,將虛擬機可執行文件中的、每個進程對應的源碼中除了公共源碼外的源碼,放入該進程的專用虛擬機可執行文件中;
將每個進程的專用虛擬機可執行文件和公共源碼虛擬機可執行文件,確定為重布局虛擬機可執行文件。
可選地,在對應用程序安裝包進行解壓,得到虛擬機可執行文件之后,在基于預設的配置文件,將虛擬機可執行文件中的、每個進程對應的源碼放入該進程的專用虛擬機可執行文件中,得到重布局虛擬機可執行文件之前,方法還可以包括:
讀取虛擬機可執行文件中的源碼;
將源碼存儲至預設類鏈表中;
基于預設的配置文件,將虛擬機可執行文件中的、每個進程對應的源碼放入該進程的專用虛擬機可執行文件中,得到重布局虛擬機可執行文件的步驟,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京金山安全軟件有限公司,未經北京金山安全軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710881964.5/2.html,轉載請聲明來源鉆瓜專利網。





