一種應(yīng)用軟件首頁的啟動(dòng)方法及啟動(dòng)裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及應(yīng)用軟件的啟動(dòng)技術(shù)領(lǐng)域,尤其涉及一種應(yīng)用軟件首頁的啟動(dòng)方法及啟動(dòng)裝置。
【背景技術(shù)】
[0002]一款應(yīng)用軟件通常包括用戶界面模塊和內(nèi)核模塊,有的還包括網(wǎng)絡(luò)服務(wù)模塊等。在應(yīng)用軟件啟動(dòng)時(shí),需要把這些模塊進(jìn)行初始化。
[0003]現(xiàn)有技術(shù)中,在應(yīng)用軟件啟動(dòng)時(shí),是將應(yīng)用軟件的多個(gè)模塊及其所利用的圖片或數(shù)據(jù)庫等資源數(shù)據(jù)同時(shí)進(jìn)行加載,這導(dǎo)致所述應(yīng)用軟件首頁啟動(dòng)并顯示的較慢,嚴(yán)重時(shí)還會因所述應(yīng)用軟件的多個(gè)模塊及其所利用的資源數(shù)據(jù)在同時(shí)加載時(shí)出現(xiàn)阻塞,導(dǎo)致所述應(yīng)用軟件在啟動(dòng)時(shí)的停滯或崩潰。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明實(shí)施例提供一種應(yīng)用軟件首頁的啟動(dòng)方法及啟動(dòng)裝置,能夠有效提高應(yīng)用軟件首頁的啟動(dòng)速度。
[0005]一方面,本發(fā)明實(shí)施例提供一種應(yīng)用軟件首頁的啟動(dòng)方法,包括:接收啟動(dòng)應(yīng)用軟件的指令;根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊進(jìn)行逐層初始化。
[0006]可選地,所述根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊進(jìn)行逐層初始化包括:根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的用戶界面模塊進(jìn)行初始化;對所述用戶界面模塊初始化完成后,對所述應(yīng)用軟件的內(nèi)核模塊進(jìn)行初始化;在對所述應(yīng)用軟件的內(nèi)核模塊初始化完成后,對所述應(yīng)用軟件的網(wǎng)絡(luò)服務(wù)模塊進(jìn)行初始化。
[0007]可選地,所述對所述應(yīng)用軟件首頁的用戶界面模塊進(jìn)行初始化包括:對所述應(yīng)用軟件首頁的用戶界面的基本組件進(jìn)行加載;在對所述用戶界面的基本組件加載之后,再對所述用戶界面所需要的數(shù)據(jù)進(jìn)行加載。
[0008]可選地,所述對所述應(yīng)用軟件首頁的用戶界面模塊進(jìn)行初始化包括:采用第一線程對所述應(yīng)用軟件首頁的用戶界面的基本組件進(jìn)行加載;采用第二線程對所述用戶界面所需要的數(shù)據(jù)中加載時(shí)間超過閾值的數(shù)據(jù)進(jìn)行加載,采用第三線程對所述用戶界面所需要的數(shù)據(jù)中加載時(shí)間不超過閾值的數(shù)據(jù)進(jìn)行加載。
[0009]可選地,所述第一線程、第二線程和第三線程是同一個(gè)線程;或者,所述第一線程和第三線程是同一個(gè)線程,第二線程是獨(dú)立于第一線程和第三線程之外的線程;或者,所述第二線程和第三線程是同一個(gè)線程,第一線程是獨(dú)立于第二線程和第三線程之外的線程。
[0010]可選地,所述應(yīng)用軟件首頁包括至少需要兩屏顯示的頁面數(shù)據(jù);所述的應(yīng)用軟件首頁的啟動(dòng)方法還包括:優(yōu)先加載要在屏幕上顯示的當(dāng)前屏頁面數(shù)據(jù);在將當(dāng)前屏頁面數(shù)據(jù)加載完成后,再加載下一屏頁面數(shù)據(jù);或者在滑動(dòng)到下一屏后再加載下一屏頁面數(shù)據(jù)。
[0011]可選地,所述應(yīng)用軟件為瀏覽器。
[0012]另一方面,本發(fā)明實(shí)施例提供一種應(yīng)用軟件首頁的啟動(dòng)裝置,包括:指令接收單元,用于接收啟動(dòng)應(yīng)用軟件的指令;初始化單元,用于根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊進(jìn)行逐層初始化。
[0013]可選地,所述初始化單元包括:界面初始化模塊,用于根據(jù)預(yù)先設(shè)定的層次關(guān)系,對用戶界面模塊進(jìn)行初始化;內(nèi)核初始化模塊,用于根據(jù)所述層次關(guān)系,在所述用戶界面模塊初始化完成后,對所述應(yīng)用軟件的內(nèi)核模塊進(jìn)行初始化;網(wǎng)絡(luò)初始化模塊,用于在所述內(nèi)核模塊初始化完成后,對所述應(yīng)用軟件的網(wǎng)絡(luò)服務(wù)模塊進(jìn)行初始化。
[0014]可選地,所述界面初始化模塊包括:第一加載子模塊,用于采用第一線程對所述應(yīng)用軟件首頁的用戶界面的基本組件進(jìn)行加載;第二加載子模塊,在所述第一加載子模塊對用戶界面的基本組件進(jìn)行加載之后,用于采用第二線程對所述用戶界面所需要的數(shù)據(jù)中加載時(shí)間超過閾值的數(shù)據(jù)進(jìn)行加載;第三加載子模塊,在所述第一加載子模塊對用戶界面的基本組件進(jìn)行加載之后,用于采用第三線程對所述用戶界面所需要的數(shù)據(jù)中加載時(shí)間沒有超過閾值的數(shù)據(jù)進(jìn)行加載。
[0015]可選地,所述初始化單元還包括:加載控制模塊,用于控制對要在屏幕上顯示的當(dāng)前屏頁面數(shù)據(jù)進(jìn)行優(yōu)先加載,在將當(dāng)前屏頁面數(shù)據(jù)加載完成后,再加載下一屏頁面數(shù)據(jù),或者在滑動(dòng)到下一屏后再加載下一屏頁面數(shù)據(jù)。
[0016]可選地,所述的應(yīng)用軟件首頁的啟動(dòng)裝置,還包括:存儲單元,用于存儲所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的各模塊之間的層次關(guān)系。
[0017]本發(fā)明實(shí)施例提供的技術(shù)方案,根據(jù)預(yù)先設(shè)定的層次關(guān)系,對應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊進(jìn)行逐層初始化,這樣,能夠防止初始化過程中出現(xiàn)阻塞,從而有效提高了所述應(yīng)用軟件首頁的啟動(dòng)速度。
【附圖說明】
[0018]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
[0019]圖1為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)方法一實(shí)施例的流程示意圖;
[0020]圖2為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)方法另一實(shí)施例中S2的流程示意圖;
[0021]圖3為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)方法又一實(shí)施例中S21的流程示意圖;
[0022]圖4為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)裝置一實(shí)施例的結(jié)構(gòu)示意圖;
[0023]圖5為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)裝置另一實(shí)施例的結(jié)構(gòu)示意圖;
[0024]圖6為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)裝置一實(shí)施例中初始化單元的結(jié)構(gòu)示意圖;
[0025]圖7為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)裝置一實(shí)施例中界面初始化模塊的結(jié)構(gòu)示意圖;
[0026]圖8為本發(fā)明的應(yīng)用軟件首頁的啟動(dòng)裝置另一實(shí)施例中初始化單元的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0027]下面結(jié)合附圖對本發(fā)明實(shí)施例一種應(yīng)用軟件首頁的啟動(dòng)方法及啟動(dòng)裝置進(jìn)行詳細(xì)描述。
[0028]應(yīng)當(dāng)明確,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0029]如圖1所示,本發(fā)明一種應(yīng)用軟件首頁的啟動(dòng)方法的【具體實(shí)施方式】,包括:
[0030]S1、接收啟動(dòng)應(yīng)用軟件的指令;
[0031]S2、根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊進(jìn)行逐層初始化。
[0032]本實(shí)施例中所述應(yīng)用軟件首頁的啟動(dòng)方法,通過對所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊逐層進(jìn)行初始化,能夠防止初始化過程中出現(xiàn)阻塞,從而有效提高了所述應(yīng)用軟件首頁的啟動(dòng)速度,并且能夠給用戶帶來良好的體驗(yàn)。
[0033]為了加快所述應(yīng)用軟件首頁的顯示,可選地,如圖2所示,所述根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的啟動(dòng)過程中所要初始化的模塊進(jìn)行逐層初始化(S2)包括:
[0034]S21、根據(jù)所述指令,并根據(jù)預(yù)先設(shè)定的層次關(guān)系,對所述應(yīng)用軟件首頁的用戶界面模塊進(jìn)行初始化;
[0035]S22、對所述用戶界面模塊初始化完成后,對所述應(yīng)用軟件的內(nèi)核模塊進(jìn)行初始化;
[0036]S23、在對所述應(yīng)用軟件的內(nèi)核模塊初始化完成后,對所述應(yīng)用軟件的網(wǎng)絡(luò)服務(wù)模塊進(jìn)行初始化。
[0037]可選的,在本發(fā)明的實(shí)施例中,所述用戶界面模塊可以用于應(yīng)用軟件與用戶間的交互和信息交換;所述內(nèi)核模塊可以用于查詢接口并顯示用戶請求的內(nèi)容;所述網(wǎng)絡(luò)服務(wù)模塊可以用于完成網(wǎng)絡(luò)調(diào)用。
[0038]例如,如果所述應(yīng)用軟件是瀏覽器,上述用戶界面模塊可以是指用戶能夠看到的、除了瀏覽器主窗口之外的其它部分,如地址欄、后退/前進(jìn)按鈕、書簽?zāi)夸浀?;所述?nèi)核模塊可以是負(fù)責(zé)解析用戶請求的html (英文全稱是:HyperText Markup Language,超文本標(biāo)記語言),及css (英文全稱是:Cascading Style Sheets,層疊樣式表單)的部分;網(wǎng)絡(luò)服務(wù)模塊可以是與其他設(shè)備進(jìn)行http (英文全稱是:Hypertext transfer protocol,超文本傳送協(xié)議)交互的部分。
[0039]在本示例中,將用戶界面模塊作為逐層初始化的第一層,將內(nèi)核模塊作為逐層初始化的第二層,將網(wǎng)絡(luò)服務(wù)模塊作為逐層初始化的第三層??梢岳斫?,在實(shí)際應(yīng)用中,上述層次關(guān)系是靈活的,可以根據(jù)具體的情況進(jìn)行設(shè)定,本發(fā)明的實(shí)施例對此不作限定。
[0040]進(jìn)一步可選的,可以將所述預(yù)先設(shè)定的層次關(guān)系進(jìn)行保存,以便于每次啟動(dòng)所述應(yīng)用軟件首頁時(shí)自動(dòng)按照所述層次關(guān)系執(zhí)行相應(yīng)的操作。
[0041]本實(shí)施例中,在接收到啟動(dòng)應(yīng)用軟件的指令時(shí),可以根據(jù)預(yù)先設(shè)置的層次關(guān)系首先初始化用戶界面模塊,然后依次加載內(nèi)核模塊、網(wǎng)絡(luò)服務(wù)模塊及其它功能模塊,從而有助于快速加載出所述應(yīng)用軟件首頁。
[0042]在前述應(yīng)用軟件首頁的啟動(dòng)方法的【具體實(shí)施方式】中,為了能夠快速加載出所述應(yīng)用軟件首頁,可選地,如圖3所示,所述對所述應(yīng)用軟件首頁的用戶界面模塊進(jìn)行初始化(S21)包括:
[0043]S211、對所述應(yīng)用軟件首頁的用戶界面的基本組件進(jìn)行加載;
[0044]可選的,可以采用第一線程對所述應(yīng)用軟件首頁的用戶界面的基本組件進(jìn)行加載。
[0045]S212、在對所述用戶界面的基本組件加載之后,對所述用戶界面所需要的數(shù)據(jù)進(jìn)行加載