[發(fā)明專利]一種空間優(yōu)化方法、系統(tǒng)、智能設(shè)備及存儲介質(zhì)在審
| 申請?zhí)枺?/td> | 202110727312.2 | 申請日: | 2021-06-29 |
| 公開(公告)號: | CN113448554A | 公開(公告)日: | 2021-09-28 |
| 發(fā)明(設(shè)計)人: | 陳仁杰;歐陽鵬 | 申請(專利權(quán))人: | 東莞市小精靈教育軟件有限公司 |
| 主分類號: | G06F8/30 | 分類號: | G06F8/30;G06F8/41;G06F8/60 |
| 代理公司: | 上海碩力知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 31251 | 代理人: | 林曉青 |
| 地址: | 523851 廣東省東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 空間 優(yōu)化 方法 系統(tǒng) 智能 設(shè)備 存儲 介質(zhì) | ||
1.一種空間優(yōu)化方法,其特征在于,包括步驟:
在編譯預(yù)置應(yīng)用時,剔除每個預(yù)置應(yīng)用中相同的類文件;
將被剔除的所述類文件打包輸出至預(yù)定目錄中;
從所述預(yù)定目錄中拉取每個所述預(yù)置應(yīng)用使用的所述類文件;
判斷每個所述預(yù)置應(yīng)用使用的所述類文件是否相同;
若相同,則合并對應(yīng)的所述類文件。
2.根據(jù)權(quán)利要求1所述的一種空間優(yōu)化方法,其特征在于,所述的在編譯預(yù)置應(yīng)用時,剔除每個預(yù)置應(yīng)用中相同的類文件,具體包括步驟:
對所述預(yù)置應(yīng)用的源碼以及外部依賴庫進(jìn)行編譯,獲取class文件;
在打包的流水線最末尾增加一個自定義Transform,剔除所述class文件中所述外部依賴庫中使用到的所述類文件;
生成所述外部依賴庫的API接口的proguard文件;
對處理后的所述class文件進(jìn)行混淆、Dex,以及打包處理。
3.根據(jù)權(quán)利要求1所述的一種空間優(yōu)化方法,其特征在于,所述的判斷每個所述預(yù)置應(yīng)用使用的所述類文件是否相同,具體包括步驟:
通過文件哈希值校驗每個所述預(yù)置應(yīng)用使用的所述類文件是否相同。
4.根據(jù)權(quán)利要求1所述的一種空間優(yōu)化方法,其特征在于,所述的合并對應(yīng)的所述類文件之后,還包括步驟:
通過D8工具將所述類文件的jvm字節(jié)碼編譯成支持在指定平臺運行的dex字節(jié)碼;
根據(jù)所述dex字節(jié)碼的數(shù)量,生成一個或多個Jar文件,并打包所述Jar文件。
5.根據(jù)權(quán)利要求1至4任一所述的一種空間優(yōu)化方法,其特征在于,所述的將被剔除的所述類文件打包輸出至預(yù)定目錄中之后,還包括步驟:
將編譯預(yù)置應(yīng)用時,沒有被剔除的所述類文件的構(gòu)造函數(shù)中插入PreventClassVerified.prevent()調(diào)用;
所述的合并對應(yīng)的所述類文件,還包括:
合并PreventClassVerified類文件。
6.一種空間優(yōu)化方法系統(tǒng),其特征在于,包括:
剔除模塊,用于在編譯預(yù)置應(yīng)用時,剔除每個預(yù)置應(yīng)用中相同的類文件;
打包模塊,與所述剔除模塊連接,用于將被剔除的所述類文件打包輸出至預(yù)定目錄中;
拉取模塊,與所述打包模塊連接,用于從所述預(yù)定目錄中拉取每個所述預(yù)置應(yīng)用使用的所述類文件;
判斷模塊,與所述拉取模塊連接,用于判斷每個所述預(yù)置應(yīng)用使用的所述類文件是否相同;
合并模塊,與所述判斷模塊連接,用于在判斷每個所述預(yù)置應(yīng)用使用的所述類文件相同時,合并對應(yīng)的所述類文件。
7.根據(jù)權(quán)利要求6所述的一種空間優(yōu)化系統(tǒng),其特征在于,所述剔除模塊包括:
編譯和解包單元,用于對所述預(yù)置應(yīng)用的源碼以及外部依賴庫進(jìn)行編譯和解包,獲取class文件;
剔除單元,用于在Transform流程的最末尾增加一個自定義處理,剔除所述class文件中所述外部依賴庫中使用到的所述類文件;
proguard文件生成單元,用于生成所述外部依賴庫的API接口的proguard文件;
處理單元,用于對處理后的所述class文件進(jìn)行混淆、Dex,以及打包處理。
8.根據(jù)權(quán)利要求6所述的一種空間優(yōu)化系統(tǒng),其特征在于,還包括:
編譯模塊,與所述合并模塊連接,用于通過D8工具將所述類文件的jvm字節(jié)碼編譯成支持在指定平臺運行的dex字節(jié)碼;
打包模塊,與所述編譯模塊連接,用于根據(jù)所述dex字節(jié)碼的數(shù)量,生成一個或多個Jar文件,并打包所述Jar文件。
9.一種智能設(shè)備,其特征在于,包括:
存儲器,用于存放運行程序;
處理器,用于執(zhí)行所述存儲器內(nèi)存放的運行程序,實現(xiàn)如權(quán)利要求1至權(quán)利要求5任一項所述的空間優(yōu)化方法所述執(zhí)行的操作。
10.一種存儲介質(zhì),其特征在于:所述存儲介質(zhì)中存儲有至少一條指令,所述指令由處理器加載并執(zhí)行以實現(xiàn)如權(quán)利要求1至權(quán)利要求5任一項所述的空間優(yōu)化方法所執(zhí)行的操作。
該專利技術(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/202110727312.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





