本申請(qǐng)涉及計(jì)算機(jī),具體涉及應(yīng)用開發(fā),尤其涉及一種應(yīng)用程序控制方法和裝置。
背景技術(shù):
1、現(xiàn)有技術(shù)中,運(yùn)行時(shí)動(dòng)態(tài)擴(kuò)展應(yīng)用程序能力的方式,主要包括插件式擴(kuò)展和動(dòng)態(tài)庫(kù)注入。其中,插件式擴(kuò)展通常用于指示基于動(dòng)態(tài)庫(kù)方式實(shí)現(xiàn)的插件技術(shù),動(dòng)態(tài)庫(kù)注入為在加載動(dòng)態(tài)庫(kù)時(shí),通過在動(dòng)態(tài)庫(kù)中以“鉤子”或其他類似的動(dòng)態(tài)代碼注入技術(shù),“劫持”或“覆蓋”應(yīng)用程序中原有的代碼,或注入新代碼,以改變或擴(kuò)展原有應(yīng)用程序的技術(shù)。
2、但是,插件式擴(kuò)展一般只能基于其與應(yīng)用程序間約定好的接口,提供相應(yīng)的能力擴(kuò)展,無法深入到更加底層的功能;動(dòng)態(tài)庫(kù)注入雖然可以在運(yùn)行時(shí)向應(yīng)用程序中注入代碼,無需受插件接口的限制,從而深入到應(yīng)用的底層功能,但是,動(dòng)態(tài)庫(kù)注入不受應(yīng)用程序本身的控制。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)實(shí)施例提供了一種應(yīng)用程序控制方法、裝置、設(shè)備以及存儲(chǔ)介質(zhì)。
2、根據(jù)第一方面,本申請(qǐng)實(shí)施例提供了一種應(yīng)用程序控制方法,該方法包括:將第一動(dòng)態(tài)庫(kù)通過啟動(dòng)時(shí)加載的方式注入到應(yīng)用程序;將第二動(dòng)態(tài)庫(kù)以插件方式加載入應(yīng)用程序;響應(yīng)于確定第一動(dòng)態(tài)庫(kù)注入完成,并且第二動(dòng)態(tài)庫(kù)加載完成,基于第二動(dòng)態(tài)庫(kù),調(diào)用第一動(dòng)態(tài)庫(kù)提供的指定接口,對(duì)第一動(dòng)態(tài)庫(kù)提供的功能進(jìn)行控制。
3、根據(jù)第二方面,本申請(qǐng)實(shí)施例提供了一種應(yīng)用程序控制裝置,該裝置包括:注入模塊,被配置成將第一動(dòng)態(tài)庫(kù)通過啟動(dòng)時(shí)加載的方式注入到應(yīng)用程序;加載模塊,被配置成將第二動(dòng)態(tài)庫(kù)以插件方式加載入應(yīng)用程序;控制模塊,被配置成響應(yīng)于確定第一動(dòng)態(tài)庫(kù)注入完成,并且第二動(dòng)態(tài)庫(kù)加載完成,基于第二動(dòng)態(tài)庫(kù),調(diào)用第一動(dòng)態(tài)庫(kù)提供的指定接口,對(duì)第一動(dòng)態(tài)庫(kù)提供的功能進(jìn)行控制。
4、根據(jù)第三方面,本申請(qǐng)實(shí)施例提供了一種電子設(shè)備,該電子設(shè)備包括一個(gè)或多個(gè)處理器;存儲(chǔ)裝置,其上存儲(chǔ)有一個(gè)或多個(gè)程序,當(dāng)一個(gè)或多個(gè)程序被該一個(gè)或多個(gè)處理器執(zhí)行,使得一個(gè)或多個(gè)處理器實(shí)現(xiàn)如第一方面的任一實(shí)施例的應(yīng)用程序控制方法。
5、根據(jù)第四方面,本申請(qǐng)實(shí)施例提供了一種計(jì)算機(jī)可讀介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面的任一實(shí)施例的應(yīng)用程序控制方法。
6、本申請(qǐng)通過將第一動(dòng)態(tài)庫(kù)通過啟動(dòng)時(shí)加載的方式注入到應(yīng)用程序;將第二動(dòng)態(tài)庫(kù)以插件方式加載入應(yīng)用程序;響應(yīng)于確定第一動(dòng)態(tài)庫(kù)注入完成,并且第二動(dòng)態(tài)庫(kù)加載完成,基于第二動(dòng)態(tài)庫(kù),調(diào)用第一動(dòng)態(tài)庫(kù)提供的指定接口,對(duì)第一動(dòng)態(tài)庫(kù)提供的功能進(jìn)行控制,即通過同時(shí)加載注入式的第一動(dòng)態(tài)庫(kù)和插件式的第二動(dòng)態(tài)庫(kù),實(shí)現(xiàn)了對(duì)應(yīng)用程序底層功能的控制和擴(kuò)展。
7、應(yīng)當(dāng)理解,本部分所描述的內(nèi)容并非旨在標(biāo)識(shí)本公開的實(shí)施例的關(guān)鍵或重要特征,也不用于限制本公開的范圍。本公開的其他特征將通過以下的說明書而變得容易理解。
1.一種應(yīng)用程序控制方法,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其中,所述基于所述第二動(dòng)態(tài)庫(kù),調(diào)用所述第一動(dòng)態(tài)庫(kù)提供的指定接口,對(duì)第一動(dòng)態(tài)庫(kù)提供的功能進(jìn)行控制,包括:
3.根據(jù)權(quán)利要求1所述的方法,其中,所述基于所述第二動(dòng)態(tài)庫(kù),調(diào)用所述第一動(dòng)態(tài)庫(kù)提供的指定接口,對(duì)第一動(dòng)態(tài)庫(kù)提供的功能進(jìn)行控制,包括:
4.根據(jù)權(quán)利要求1所述的方法,其中,所述基于所述第二動(dòng)態(tài)庫(kù),調(diào)用所述第一動(dòng)態(tài)庫(kù)提供的指定接口,對(duì)第一動(dòng)態(tài)庫(kù)提供的功能進(jìn)行控制,包括:
5.根據(jù)權(quán)利要求1-4任一所述的方法,所述方法還包括:
6.根據(jù)權(quán)利要求1-4任一所述的方法,所述方法還包括:
7.一種應(yīng)用程序控制裝置,所述裝置包括:
8.根據(jù)權(quán)利要求7所述的裝置,其中,所述控制模塊進(jìn)一步被配置成:
9.一種電子設(shè)備,其特征在于,包括:
10.一種存儲(chǔ)有計(jì)算機(jī)指令的非瞬時(shí)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述計(jì)算機(jī)指令用于使所述計(jì)算機(jī)執(zhí)行權(quán)利要求1-6中任一項(xiàng)所述的方法。