[發明專利]一種應用程序的壓縮方法和裝置有效
| 申請號: | 201611266088.7 | 申請日: | 2016-12-31 |
| 公開(公告)號: | CN108279941B | 公開(公告)日: | 2021-06-15 |
| 發明(設計)人: | 孫澤奪 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司 11319 | 代理人: | 蘇培華 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 應用程序 壓縮 方法 裝置 | ||
1.一種應用程序的壓縮方法,其特征在于,包括:
采用預設壓縮算法對源應用程序中的被調文件進行壓縮,所述被調文件為從源應用程序中提取出來的在程序運行過程中需要通過主調文件加載的代碼文件,所述主調文件 為從源應用程序中提取出來的可執行代碼文件;
將主調文件對被調文件的調用修改為對所述預設壓縮算法對應的解壓功能文件的調用,所述解壓功能文件用于解壓和加載壓縮后的被調文件;
封裝修改后的主調文件、壓縮后的被調文件和解壓功能文件,得到壓縮應用程序,包括:將修改后的主調文件、壓縮后的被調文件和解壓功能文件重新打包,封裝為新的應用程序,得到壓縮應用程序。
2.根據權利要求1所述的方法,其特征在于,在所述采用預設壓縮算法對源應用程序中的被調文件進行壓縮之前,所述方法還包括:
查找所述源應用程序中可采用預設壓縮算法進行壓縮的被調文件。
3.根據權利要求2所述的方法,其特征在于,所述被調文件為動態鏈接庫文件,所述主調文件為調用所述動態鏈接庫文件的可執行文件;所述查找所述源應用程序中可采用預設壓縮算法進行壓縮的被調文件包括:
在所述源應用程序包括的多種類型的文件中查找動態鏈接庫文件。
4.根據權利要求1所述的方法,其特征在于,所述方法還包括:
在所述主調文件的初始化對象中增加解壓功能文件。
5.根據權利要求1或4所述的方法,其特征在于,所述方法還包括:
將所述解壓功能文件添加至歸屬于應用程序的主框架的主調文件。
6.根據權利要求4所述的方法,其特征在于,所述在所述主調文件的初始化對象中增加解壓功能文件包括:
在所述主調文件的程序入口位置查找運行的首個函數;
在所述首個函數的調用對象中增加對應所述預設壓縮算法的解壓功能文件。
7.根據權利要求4所述的方法,其特征在于,在所述在所述主調文件的初始化對象中增加解壓功能文件之前,所述方法還包括:
從所述源應用程序的應用全局配置文件中,提取所述源應用程序的程序入口位置的入口類名稱。
8.根據權利要求1所述的方法,其特征在于,所述方法還包括:
反編譯對應的主調文件。
9.根據權利要求1所述的方法,其特征在于,所述方法還包括:
確定所述被調文件之間的依賴關系,并生成記錄依賴關系的依賴文件。
10.根據權利要求9所述的方法,其特征在于,所述封裝修改后的主調文件、壓縮后的被調文件和解壓功能文件,得到壓縮應用程序包括:
封裝所述依賴文件、修改后的主調文件、壓縮后的被調文件和解壓功能文件,得到壓縮應用程序。
11.根據權利要求1所述的方法,其特征在于,所述封裝修改后的主調文件、壓縮后的被調文件和解壓功能文件,得到壓縮應用程序包括:
對修改后的主調文件進行壓縮,并替換至修改前的主調文件所處位置;對所述壓縮后的被調文件和解壓功能文件進行壓縮,并添加至所述源應用程序中,得到壓縮應用程序。
12.根據權利要求11所述的方法,其特征在于,所述封裝修改后的主調文件、壓縮后的被調文件和解壓功能文件,得到壓縮應用程序還包括:
提取歸屬于應用程序的主框架的主調文件并進行壓縮,得到壓縮后的主框架文件,所述主框架的主調文件中已添加所述解壓功能文件;
采用壓縮后的主框架文件替換所述源應用程序原有的主框架文件。
13.根據權利要求1所述的方法,其特征在于,在所述封裝修改后的主調文件、壓縮后的被調文件和解壓功能文件,得到壓縮應用程序之后,所述方法還包括:
對所述主調文件在應用程序中所屬的功能組件進行重新簽名。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611266088.7/1.html,轉載請聲明來源鉆瓜專利網。





