一種云編譯實(shí)現(xiàn)Java應(yīng)用安裝的方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種云編譯實(shí)現(xiàn)Java應(yīng)用安裝的方法、裝置 及系統(tǒng)。
【背景技術(shù)】
[0002] Java是一種可以撰寫(xiě)跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。Java技術(shù)具 有卓越的通用性、高效性、平臺(tái)移植性和安全性,廣泛應(yīng)用于個(gè)人PC、數(shù)據(jù)中心、游戲控制 臺(tái)、科學(xué)超級(jí)計(jì)算機(jī)、移動(dòng)電話和互聯(lián)網(wǎng),同時(shí)擁有全球最大的開(kāi)發(fā)者專業(yè)社群。Java平臺(tái) 由Java虛擬機(jī)和Java應(yīng)用程序接口搭建,Java語(yǔ)言則是進(jìn)入這個(gè)平臺(tái)的通道,用Java語(yǔ) 言編寫(xiě)并編譯的程序可以運(yùn)行在這個(gè)平臺(tái)上。當(dāng)前針對(duì)終端領(lǐng)域的Android平臺(tái)也是采用 Java進(jìn)行應(yīng)用程序開(kāi)發(fā)。
[0003] 由于Android虛擬機(jī)相比原來(lái)的Java虛擬機(jī)的運(yùn)行策略不一樣(Java虛擬機(jī)是 棧式運(yùn)行方式,而Android虛擬機(jī)是采用寄存器運(yùn)行方式),使得Android虛擬機(jī)在應(yīng)用程 序安裝過(guò)程中,除了解壓*. apk文件和掃描*. dex文件等中間碼文件外,還需要針對(duì)當(dāng)前硬 件設(shè)備進(jìn)行二進(jìn)制編譯,在編譯過(guò)程中添加針對(duì)當(dāng)前硬件設(shè)備的硬件配置信息實(shí)現(xiàn)應(yīng)用程 序優(yōu)化的優(yōu)化算法,將編譯得到的優(yōu)化文件保存在系統(tǒng)中(上述編譯過(guò)程也稱編譯優(yōu)化過(guò) 程)。應(yīng)用程序運(yùn)行時(shí),硬件設(shè)備直接將編譯得到的優(yōu)化文件以及相關(guān)的方法和類庫(kù)拷貝加 載到其內(nèi)存,使得Java應(yīng)用程序運(yùn)行的時(shí)候性能得到改善。
[0004] 然而,現(xiàn)有技術(shù)中硬件設(shè)備安裝應(yīng)用程序時(shí),從應(yīng)用市場(chǎng)上下載了 *. apk文件并 解壓出*. dex文件,然后進(jìn)行bytecode掃描提取,進(jìn)而根據(jù)當(dāng)前硬件設(shè)備的配置信息轉(zhuǎn)碼 優(yōu)化成為本地機(jī)器碼格式的*. oat文件。對(duì)應(yīng)用程序進(jìn)行優(yōu)化安裝時(shí),需要在轉(zhuǎn)碼成*. oat 文件之前調(diào)用編譯優(yōu)化模塊,對(duì)其針對(duì)當(dāng)前硬件設(shè)備的配置信息進(jìn)行中間碼的優(yōu)化編譯, 雖然使得應(yīng)用程序運(yùn)行時(shí)性能得以提升,但是需要將編譯優(yōu)化放在終端設(shè)備上執(zhí)行,占用 了終端設(shè)備的運(yùn)行內(nèi)存和存儲(chǔ)空間,使得應(yīng)用程序的安裝時(shí)間變長(zhǎng),Java應(yīng)用程序的安裝 用戶體驗(yàn)差。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實(shí)施例提供一種云編譯實(shí)現(xiàn)Java應(yīng)用程序安裝的方法及裝置,可減少應(yīng) 用程序優(yōu)化安裝占用的設(shè)備內(nèi)存,提高應(yīng)用程序優(yōu)化安裝的效率,增強(qiáng)應(yīng)用程序安裝的用 戶體驗(yàn)。
[0006] 本發(fā)明實(shí)施例第一方面提供了一種云編譯實(shí)現(xiàn)Java應(yīng)用程序安裝的方法,其可 包括:
[0007] 終端設(shè)備將其硬件配置信息及目標(biāo)應(yīng)用程序的版本信息發(fā)送給應(yīng)用市場(chǎng)服務(wù)器, 以通過(guò)所述應(yīng)用市場(chǎng)服務(wù)器獲取與所述硬件配置信息及所述目標(biāo)應(yīng)用程序的版本信息對(duì) 應(yīng)的所述目標(biāo)應(yīng)用程序的升級(jí)信息;
[0008] 所述終端設(shè)備接收所述應(yīng)用市場(chǎng)服務(wù)器反饋的所述目標(biāo)應(yīng)用程序的升級(jí)信息,所 述升級(jí)信息包括:所述目標(biāo)應(yīng)用程序的版本信息對(duì)應(yīng)的中間碼文件在云端服務(wù)器上編譯得 到的所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件;
[0009] 所述終端設(shè)備根據(jù)所述升級(jí)信息對(duì)所述目標(biāo)應(yīng)用程序進(jìn)行優(yōu)化安裝,以更新所述 目標(biāo)應(yīng)用程序的版本。
[0010] 結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,所述終端設(shè)備接收所述應(yīng)用市場(chǎng)服 務(wù)器反饋的所述目標(biāo)應(yīng)用程序的升級(jí)信息,包括:
[0011] 所述終端設(shè)備接收所述應(yīng)用市場(chǎng)服務(wù)器發(fā)送的所述目標(biāo)應(yīng)用程序的最新版本信 息對(duì)應(yīng)的優(yōu)化安裝包;
[0012] 其中,所述優(yōu)化安裝包由所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件打 包生成,所述目標(biāo)碼文件由所述云端服務(wù)器根據(jù)所述目標(biāo)應(yīng)用程序的所述版本信息中包含 的所有功能對(duì)應(yīng)的中間碼文件編譯得到,所述優(yōu)化安裝包存儲(chǔ)于所述應(yīng)用市場(chǎng)服務(wù)器。
[0013] 結(jié)合第一方面第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述終端設(shè) 備根據(jù)所述升級(jí)信息對(duì)所述目標(biāo)應(yīng)用程序進(jìn)行優(yōu)化安裝,以更新所述目標(biāo)應(yīng)用程序的版 本,包括:
[0014] 所述終端設(shè)備根據(jù)所述優(yōu)化安裝包重新安裝所述目標(biāo)應(yīng)用程序,以將所述目標(biāo)應(yīng) 用程序的所有功能的版本更新為最新版本。
[0015] 結(jié)合第一方面,在第三種可能的實(shí)現(xiàn)方式中,所述終端設(shè)備接收所述應(yīng)用市場(chǎng)服 務(wù)器反饋的所述目標(biāo)應(yīng)用程序的升級(jí)信息,包括:
[0016] 所述終端設(shè)備接收所述應(yīng)用市場(chǎng)服務(wù)器發(fā)送的所述目標(biāo)應(yīng)用程序的增量升級(jí) 包;
[0017] 其中,所述增量升級(jí)包由所述目標(biāo)應(yīng)用程序中的指定功能的最新版本信息的目標(biāo) 碼文件打包生成,所述目標(biāo)碼文件由所述云端服務(wù)器根據(jù)所述目標(biāo)應(yīng)用程序中待升級(jí)優(yōu)化 的所述指定功能對(duì)應(yīng)的中間碼文件編譯得到,所述增量升級(jí)包存儲(chǔ)于所述應(yīng)用市場(chǎng)服務(wù) 器。
[0018] 結(jié)合第一方面第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所述終端設(shè) 備根據(jù)所述升級(jí)信息對(duì)所述目標(biāo)應(yīng)用程序進(jìn)行優(yōu)化安裝,以更新所述目標(biāo)應(yīng)用程序的版 本,包括:
[0019] 所述終端設(shè)備將所述目標(biāo)應(yīng)用程序的所述增量升級(jí)包與所述目標(biāo)應(yīng)用程序版本 信息對(duì)應(yīng)的安裝包進(jìn)行融合,以生成包含所述指定功能的最新版本信息的所述目標(biāo)應(yīng)用程 序的安裝包;
[0020] 根據(jù)所述安裝包重新安裝所述目標(biāo)應(yīng)用程序,以將所述目標(biāo)應(yīng)用程序的所述指定 功能的版本更新為最新版本。
[0021] 本發(fā)明實(shí)施例第二方面提供了一種云編譯實(shí)現(xiàn)Java應(yīng)用程序安裝的方法,其可 包括:
[0022] 云端服務(wù)器獲取應(yīng)用市場(chǎng)服務(wù)器發(fā)送的目標(biāo)終端設(shè)備的硬件配置信息,以及所述 目標(biāo)終端設(shè)備內(nèi)置的目標(biāo)應(yīng)用程序的中間碼文件;
[0023] 所述云端服務(wù)器根據(jù)所述目標(biāo)終端設(shè)備的硬件配置信息,以及所述云端服務(wù)器存 儲(chǔ)的終端設(shè)備的硬件配置信息與應(yīng)用程序的版本信息的對(duì)應(yīng)關(guān)系,判斷所述目標(biāo)終端設(shè)備 內(nèi)置的目標(biāo)應(yīng)用程序的版本是否為最新版本;
[0024] 若所述目標(biāo)終端設(shè)備內(nèi)置的目標(biāo)應(yīng)用程序的版本不是最新版本,則根據(jù)最新版本 信息對(duì)所述的目標(biāo)應(yīng)用程序的中間碼文件進(jìn)行編譯,以得到所述目標(biāo)應(yīng)用程序的最新版本 信息對(duì)應(yīng)的目標(biāo)碼文件;
[0025] 所述云端服務(wù)器向所述應(yīng)用市場(chǎng)服務(wù)器發(fā)送所述目標(biāo)應(yīng)用程序的最新版本信息 對(duì)應(yīng)的目標(biāo)碼文件,以通過(guò)所述應(yīng)用市場(chǎng)服務(wù)器向所述目標(biāo)終端設(shè)備發(fā)送所述目標(biāo)應(yīng)用程 序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件。
[0026] 結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,所述云端服務(wù)器根據(jù)所述目標(biāo)終端 設(shè)備的硬件配置信息,以及所述云端服務(wù)器存儲(chǔ)的終端設(shè)備的硬件配置信息與應(yīng)用程序 的版本信息的對(duì)應(yīng)關(guān)系,判斷所述目標(biāo)終端設(shè)備內(nèi)置的目標(biāo)應(yīng)用程序的版本是否為最新版 本,包括:
[0027] 所述云端服務(wù)器將所述目標(biāo)終端設(shè)備的硬件配置信息與所述云端服務(wù)器存儲(chǔ)的 各個(gè)終端設(shè)備的硬件配置信息進(jìn)行匹配,確定所述目標(biāo)終端設(shè)備的硬件配置信息是否為所 述云端服務(wù)器存儲(chǔ)的所述各個(gè)終端設(shè)備的硬件配置信息中的任一個(gè);
[0028] 若所述目標(biāo)終端設(shè)備的硬件配置信息為所述云端服務(wù)器存儲(chǔ)的所述硬件配置信 息中的任一個(gè),則根據(jù)所述各個(gè)終端設(shè)備的硬件配置信息與應(yīng)用程序的版本信息的對(duì)應(yīng)關(guān) 系,確定所述目標(biāo)終端設(shè)備的硬件配置信息對(duì)應(yīng)的所述目標(biāo)應(yīng)用程序的最新版本信息;
[0029] 將所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本信息與所述目標(biāo)應(yīng)用程序 的最新版本信息進(jìn)行匹配,以判斷所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本是否 為最新版本。
[0030] 結(jié)合第二方面,在第二種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述最新版本信息對(duì)所述 的目標(biāo)應(yīng)用程序的中間碼文件進(jìn)行編譯,以得到所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的 目標(biāo)碼文件,包括:
[0031] 將所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本信息與所述目標(biāo)應(yīng)用程序 的最新版本信息進(jìn)行匹配,確定所述目標(biāo)應(yīng)用程序的最新版本信息中新增的指定功能的升 級(jí)信息;
[0032] 根據(jù)所述指定功能的升級(jí)信息對(duì)所述目標(biāo)終端內(nèi)置的所述目標(biāo)應(yīng)用程序的安裝 包中包含的中間碼文件進(jìn)行編譯,以得到包含所述指定功能的最新版本信息的所述目標(biāo)應(yīng) 用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件,并將所述目標(biāo)碼文件打包生成所述目標(biāo)應(yīng)用程 序的最新版本信息對(duì)應(yīng)的優(yōu)化安裝包。
[0033] 結(jié)合第二方面,在第三種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述最新版本信息對(duì)所述 的目標(biāo)應(yīng)用程序的中間碼文件進(jìn)行編譯,以得到所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的 目標(biāo)碼文件,包括:
[0034] 將所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本信息與所述目標(biāo)應(yīng)用程序 的最新版本信息進(jìn)行匹配,確定所述目標(biāo)應(yīng)用程序的最新版本信息中新增的指定功能的升 級(jí)信息;
[0035] 根據(jù)所述指定功能的升級(jí)信息對(duì)所述指定功能對(duì)應(yīng)的中間碼文件進(jìn)行編譯,以生 成所述指定功能的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件,并將所述目標(biāo)碼文件打包生成所述目 標(biāo)應(yīng)用程序的增量升級(jí)包。
[0036] 結(jié)合第二方面至第二方面第三種可能的實(shí)現(xiàn)方式中任一種,在第四種可能的實(shí)現(xiàn) 方式中,所述云端服務(wù)器獲取應(yīng)用市場(chǎng)服務(wù)器發(fā)送的目標(biāo)終端設(shè)備的硬件配置信息之前, 所述方法還包括:
[0037] 所述云端服務(wù)器通過(guò)所述應(yīng)用市場(chǎng)服務(wù)器從應(yīng)用市場(chǎng)中獲取至少一種硬件配置 類型的至少一個(gè)終端設(shè)備的硬件配置信息;
[0038] 通過(guò)所述應(yīng)用市場(chǎng)服務(wù)器從所述應(yīng)用市場(chǎng)中獲取各個(gè)所述終端設(shè)備的硬件配置 信息對(duì)應(yīng)的至少一個(gè)應(yīng)用程序的最新版本信息;
[0039] 建立所述各個(gè)終端設(shè)備的硬件配置信息與各個(gè)所述應(yīng)用程序的最新版本信息的 對(duì)應(yīng)關(guān)系。
[0040] 本發(fā)明實(shí)施例第三方面提供了一種云編譯實(shí)現(xiàn)Java應(yīng)用程序安裝的方法,其可 包括:
[0041] 應(yīng)用市場(chǎng)服務(wù)器獲取終端設(shè)備發(fā)送的所述終端設(shè)備的硬件配置信息及目標(biāo)應(yīng)用 程序的版本信息;
[0042] 所述應(yīng)用市場(chǎng)服務(wù)器根據(jù)所述終端設(shè)備的硬件配置信息,以及所述應(yīng)用市場(chǎng)服務(wù) 器中存儲(chǔ)的終端設(shè)備的硬件配置信息與所述目標(biāo)應(yīng)用程序的最新版本信息的對(duì)應(yīng)關(guān)系,確 定所述終端設(shè)備的硬件配置信息對(duì)應(yīng)的所述目標(biāo)應(yīng)用程序的最新版本信息;
[0043] 所述應(yīng)用市場(chǎng)服務(wù)器根據(jù)所述終端設(shè)備發(fā)送的所述目標(biāo)應(yīng)用程序的版本信息,判 斷所述版本息是否為最新版本息;
[0044] 若所述版本信息不是最新版本信息,則將所述目標(biāo)應(yīng)用程序的升級(jí)信息發(fā)送給所 述終端設(shè)備,所述升級(jí)信息包括:所述目標(biāo)應(yīng)用程序的版本信息對(duì)應(yīng)的中間碼文件在云端 服務(wù)器上編譯得到的所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件。
[0045] 結(jié)合第三方面,在第一種可能的實(shí)現(xiàn)方式中,所述應(yīng)用市場(chǎng)服務(wù)器獲取終端設(shè)備 發(fā)送的所述終端設(shè)備的硬件配置信息及目標(biāo)應(yīng)用程序的版本信息之后,所述方法還包括:
[0046] 所述應(yīng)用市場(chǎng)服務(wù)器將所述終端設(shè)備的配置信息,以及所述應(yīng)用市場(chǎng)服務(wù)器中存 儲(chǔ)的所述目標(biāo)應(yīng)用程序的中間碼文件發(fā)送給所述云端服務(wù)器,以通過(guò)所述云端服務(wù)器根據(jù) 所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)所述目標(biāo)應(yīng)用程序的中間碼文件進(jìn)行編譯,得到所述 目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件。
[0047] 本發(fā)明實(shí)施例第四方面提供了一種終端設(shè)備,其可包括:
[0048] 發(fā)送模塊,用于將終端設(shè)備的硬件配置信息及目標(biāo)應(yīng)用程序的版本信息發(fā)送給應(yīng) 用市場(chǎng)服務(wù)器,以通過(guò)所述應(yīng)用市場(chǎng)服務(wù)器獲取與所述硬件配置信息及所述目標(biāo)應(yīng)用程序 的版本信息對(duì)應(yīng)的所述目標(biāo)應(yīng)用程序的升級(jí)信息;
[0049] 接收模塊,用于接收所述應(yīng)用市場(chǎng)服務(wù)器反饋的所述目標(biāo)應(yīng)用程序的升級(jí)信息, 所述升級(jí)信息包括:所述目標(biāo)應(yīng)用程序的版本信息對(duì)應(yīng)的中間碼文件在云端服務(wù)器上編譯 得到的所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件;
[0050] 安裝模塊,用于根據(jù)所述接收模塊接收到的所述升級(jí)信息對(duì)所述目標(biāo)應(yīng)用程序進(jìn) 行優(yōu)化安裝,以更新所述目標(biāo)應(yīng)用程序的版本。
[0051] 結(jié)合第四方面,在第一種可能的實(shí)現(xiàn)方式中,所述接收模塊具體用于:
[0052] 接收所述應(yīng)用市場(chǎng)服務(wù)器發(fā)送的所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的優(yōu)化 安裝包;
[0053] 其中,所述優(yōu)化安裝包由所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件打 包生成,所述目標(biāo)碼文件由所述云端服務(wù)器根據(jù)所述目標(biāo)應(yīng)用程序的所述版本信息中包含 的所有功能對(duì)應(yīng)的中間碼文件編譯得到,所述優(yōu)化安裝包存儲(chǔ)于所述應(yīng)用市場(chǎng)服務(wù)器。
[0054] 結(jié)合第四方面第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述安裝模 塊具體用于:
[0055] 根據(jù)所述接收模塊接收的所述優(yōu)化安裝包重新安裝所述目標(biāo)應(yīng)用程序,以將所述 目標(biāo)應(yīng)用程序的所有功能的版本更新為最新版本。
[0056] 結(jié)合第四方面,在第三種可能的實(shí)現(xiàn)方式中,所述接收模塊具體用于:
[0057] 接收所述應(yīng)用市場(chǎng)服務(wù)器發(fā)送的所述目標(biāo)應(yīng)用程序的增量升級(jí)包;
[0058] 其中,所述增量升級(jí)包由所述目標(biāo)應(yīng)用程序中的指定功能的最新版本信息的目標(biāo) 碼文件打包生成,所述目標(biāo)碼文件由所述云端服務(wù)器根據(jù)所述目標(biāo)應(yīng)用程序中待升級(jí)優(yōu)化 的所述指定功能對(duì)應(yīng)的中間碼文件編譯得到,所述增量升級(jí)包存儲(chǔ)于所述應(yīng)用市場(chǎng)服務(wù) 器。
[0059] 結(jié)合第四方面第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所述安裝模 塊具體用于:
[0060] 將所述接收模塊接收的所述目標(biāo)應(yīng)用程序的所述增量升級(jí)包與所述目標(biāo)應(yīng)用程 序版本信息對(duì)應(yīng)的安裝包進(jìn)行融合,以生成包含所述指定功能的最新版本信息的所述目標(biāo) 應(yīng)用程序的安裝包;
[0061 ] 根據(jù)所述安裝包重新安裝所述目標(biāo)應(yīng)用程序,以將所述目標(biāo)應(yīng)用程序的所述指定 功能的版本更新為最新版本。
[0062] 本發(fā)明實(shí)施例第五方面提供了一種云端服務(wù)器,其可包括:
[0063] 獲取模塊,用于獲取應(yīng)用市場(chǎng)服務(wù)器發(fā)送的目標(biāo)終端設(shè)備的硬件配置信息,以及 所述目標(biāo)終端設(shè)備內(nèi)置的目標(biāo)應(yīng)用程序的中間碼文件;
[0064] 判斷模塊,用于根據(jù)所述獲取模塊獲取的所述目標(biāo)終端設(shè)備的硬件配置信息,以 及所述云端服務(wù)器存儲(chǔ)的終端設(shè)備的硬件配置信息與應(yīng)用程序的版本信息的對(duì)應(yīng)關(guān)系,判 斷所述目標(biāo)終端設(shè)備內(nèi)置的目標(biāo)應(yīng)用程序的版本是否為最新版本;
[0065] 編譯模塊,用于在所述判斷模塊判斷結(jié)果為否時(shí),根據(jù)最新版本信息對(duì)所述的目 標(biāo)應(yīng)用程序的中間碼文件進(jìn)行編譯,以得到所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo) 碼文件;
[0066] 發(fā)送模塊,用于向所述應(yīng)用市場(chǎng)服務(wù)器發(fā)送所述編譯模塊編譯得到的所述目標(biāo)應(yīng) 用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件,以通過(guò)所述應(yīng)用市場(chǎng)服務(wù)器向所述目標(biāo)終端設(shè) 備發(fā)送所述目標(biāo)應(yīng)用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件。
[0067] 結(jié)合第五方面,在第一種可能的實(shí)現(xiàn)方式中,所述判斷模塊具體用于:
[0068] 將所述獲取模塊獲取的所述目標(biāo)終端設(shè)備的硬件配置信息與所述云端服務(wù)器存 儲(chǔ)的各個(gè)終端設(shè)備的硬件配置信息進(jìn)行匹配,確定所述目標(biāo)終端設(shè)備的硬件配置信息是否 為所述云端服務(wù)器存儲(chǔ)的所述各個(gè)終端設(shè)備的硬件配置信息中的任一個(gè);
[0069] 若所述目標(biāo)終端設(shè)備的硬件配置信息為所述云端服務(wù)器存儲(chǔ)的所述硬件配置信 息中的任一個(gè),則根據(jù)所述各個(gè)終端設(shè)備的硬件配置信息與應(yīng)用程序的版本信息的對(duì)應(yīng)關(guān) 系,確定所述目標(biāo)終端設(shè)備的硬件配置信息對(duì)應(yīng)的所述目標(biāo)應(yīng)用程序的最新版本信息;
[0070] 將所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本信息與所述目標(biāo)應(yīng)用程序 的最新版本信息進(jìn)行匹配,以判斷所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本是否 為最新版本。
[0071] 結(jié)合第五方面,在第二種可能的實(shí)現(xiàn)方式中,所述編譯模塊具體用于:
[0072] 將所述目標(biāo)終端設(shè)備內(nèi)置的所述目標(biāo)應(yīng)用程序的版本信息與所述目標(biāo)應(yīng)用程序 的最新版本信息進(jìn)行匹配,確定所述目標(biāo)應(yīng)用程序的最新版本信息中新增的指定功能的升 級(jí)信息;
[0073] 根據(jù)所述指定功能的升級(jí)信息對(duì)所述目標(biāo)終端內(nèi)置的所述目標(biāo)應(yīng)用程序的安裝 包中包含的中間碼文件進(jìn)行編譯,以得到包含所述指定功能的最新版本信息的所述目標(biāo)應(yīng) 用程序的最新版本信息對(duì)應(yīng)的目標(biāo)碼文件,并將所述目標(biāo)碼文件打包生成所述目標(biāo)應(yīng)用程 序的最新版本信息對(duì)應(yīng)的優(yōu)化安裝包。
[0074] 結(jié)合第五方面,在第三種可能的實(shí)現(xiàn)方式中,所述編譯模塊具體用于