[發(fā)明專利]代碼注入方法和裝置、電子設(shè)備及存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202010002458.6 | 申請(qǐng)日: | 2020-01-02 |
| 公開(kāi)(公告)號(hào): | CN111158667B | 公開(kāi)(公告)日: | 2023-08-01 |
| 發(fā)明(設(shè)計(jì))人: | 林壽耿 | 申請(qǐng)(專利權(quán))人: | 廣州虎牙科技有限公司 |
| 主分類號(hào): | G06F8/30 | 分類號(hào): | G06F8/30 |
| 代理公司: | 北京超凡宏宇專利代理事務(wù)所(特殊普通合伙) 11463 | 代理人: | 胡蓉 |
| 地址: | 511400 廣東省廣州市番禺*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 代碼 注入 方法 裝置 電子設(shè)備 存儲(chǔ) 介質(zhì) | ||
1.一種代碼注入方法,其特征在于,包括:
基于預(yù)先配置的代碼預(yù)處理器對(duì)第一程序代碼進(jìn)行預(yù)處理,并基于預(yù)處理的結(jié)果生成語(yǔ)法樹(shù)對(duì)象,其中所述第一程序代碼用于表征想要實(shí)現(xiàn)的主要功能;
基于所述語(yǔ)法樹(shù)對(duì)象確定位置信息和生成第二程序代碼,其中,該位置信息用于標(biāo)識(shí)該第二程序代碼需要注入至所述第一程序代碼的位置,所述第二程序代碼用于表征在前述主要功能基礎(chǔ)上實(shí)現(xiàn)的輔助功能;
基于所述位置信息將所述第二程序代碼注入至所述第一程序代碼;
其中,所述基于所述語(yǔ)法樹(shù)對(duì)象確定位置信息和生成第二程序代碼的步驟,包括:
從所述第一程序代碼包括的至少一個(gè)注解中確定目標(biāo)注解,并基于所述語(yǔ)法樹(shù)對(duì)象生成語(yǔ)法樹(shù)節(jié)點(diǎn)操作對(duì)象和語(yǔ)法樹(shù)構(gòu)建對(duì)象,其中所述目標(biāo)注解具有待生成的第二程序代碼的相關(guān)信息;
基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)節(jié)點(diǎn)操作對(duì)象確定位置信息;
基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)構(gòu)建對(duì)象生成第二程序代碼。
3.根據(jù)權(quán)利要求2所述的代碼注入方法,其特征在于,所述基于該目標(biāo)文件生成語(yǔ)法樹(shù)對(duì)象的步驟,包括:
對(duì)所述目標(biāo)文件中的初始化方法進(jìn)行處理,得到所述第一程序代碼的環(huán)境對(duì)象,并基于該環(huán)境對(duì)象生成語(yǔ)法樹(shù)對(duì)象。
4.根據(jù)權(quán)利要求1-3任意一項(xiàng)所述的代碼注入方法,其特征在于,所述從所述第一程序代碼包括的至少一個(gè)注解中確定目標(biāo)注解的步驟,包括:
對(duì)目標(biāo)文件中的注解獲取方法進(jìn)行處理,得到所述第一程序代碼包括的至少一個(gè)注解中的目標(biāo)注解,其中,所述目標(biāo)文件為所述第一程序代碼所在的文件。
5.根據(jù)權(quán)利要求1-3任意一項(xiàng)所述的代碼注入方法,其特征在于,所述基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)節(jié)點(diǎn)操作對(duì)象確定位置信息的步驟,包括:
基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)節(jié)點(diǎn)操作對(duì)象確定目標(biāo)程序代碼段的接口信息,其中,所述第一程序代碼包括至少一個(gè)程序代碼段,所述接口信息用于標(biāo)識(shí)所述目標(biāo)程序代碼段在所述第一程序代碼中的位置。
6.根據(jù)權(quán)利要求1-3任意一項(xiàng)所述的代碼注入方法,其特征在于,所述基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)構(gòu)建對(duì)象生成第二程序代碼的步驟,包括:
基于所述語(yǔ)法樹(shù)構(gòu)建對(duì)象生成至少一個(gè)代碼生成方法;
基于所述至少一個(gè)代碼生成方法和所述目標(biāo)注解生成第二程序代碼。
7.一種代碼注入裝置,其特征在于,包括:
對(duì)象生成模塊,用于基于預(yù)先配置的代碼預(yù)處理器對(duì)第一程序代碼進(jìn)行預(yù)處理,并基于預(yù)處理的結(jié)果生成語(yǔ)法樹(shù)對(duì)象,其中所述第一程序代碼用于表征想要實(shí)現(xiàn)的主要功能;
對(duì)象處理模塊,用于基于所述語(yǔ)法樹(shù)對(duì)象確定位置信息和生成第二程序代碼,其中,該位置信息用于標(biāo)識(shí)該第二程序代碼需要注入至所述第一程序代碼的位置,所述第二程序代碼用于表征在前述主要功能基礎(chǔ)上實(shí)現(xiàn)的輔助功能;
代碼注入模塊,用于基于所述位置信息將所述第二程序代碼注入至所述第一程序代碼;
其中,所述對(duì)象處理模塊基于所述語(yǔ)法樹(shù)對(duì)象確定位置信息和生成第二程序代碼的方式,包括:
從所述第一程序代碼包括的至少一個(gè)注解中確定目標(biāo)注解,并基于所述語(yǔ)法樹(shù)對(duì)象生成語(yǔ)法樹(shù)節(jié)點(diǎn)操作對(duì)象和語(yǔ)法樹(shù)構(gòu)建對(duì)象,其中所述目標(biāo)注解具有待生成的第二程序代碼的相關(guān)信息;
基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)節(jié)點(diǎn)操作對(duì)象確定位置信息;
基于所述目標(biāo)注解和所述語(yǔ)法樹(shù)構(gòu)建對(duì)象生成第二程序代碼。
8.一種電子設(shè)備,其特征在于,包括:
存儲(chǔ)器,用于存儲(chǔ)計(jì)算機(jī)程序;
與所述存儲(chǔ)器連接的處理器,用于執(zhí)行所述計(jì)算機(jī)程序,以實(shí)現(xiàn)權(quán)利要求1-6任意一項(xiàng)所述的代碼注入方法。
9.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,該程序被執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1-6任意一項(xiàng)所述的代碼注入方法。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廣州虎牙科技有限公司,未經(jīng)廣州虎牙科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010002458.6/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 遙控器代碼格式結(jié)構(gòu)及其收發(fā)信方法及裝置
- 在虛擬機(jī)中驗(yàn)證代碼模塊的方法及裝置
- 一種用于代碼的管理方法及裝置
- 虛擬代碼提供系統(tǒng)、生成裝置、驗(yàn)證裝置、提供方法
- 一種自動(dòng)化代碼質(zhì)量檢查方法及系統(tǒng)
- 代碼掃描方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 用于更新代碼的方法和裝置
- 前端代碼打包方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種代碼審查服務(wù)同步方法、裝置及計(jì)算機(jī)設(shè)備
- 一種高效智能源代碼安全管理平臺(tái)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





