欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種android瀏覽器中支持多渲染引擎的方法及瀏覽器的制造方法

文檔序號(hào):8299096閱讀:727來(lái)源:國(guó)知局
一種android瀏覽器中支持多渲染引擎的方法及瀏覽器的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及瀏覽器技術(shù)領(lǐng)域,尤其涉及一種瀏覽器中支持多渲染引擎的方法及瀏
JaLzHFT O
【背景技術(shù)】
[0002]瀏覽器,又稱為網(wǎng)頁(yè)瀏覽器,是個(gè)顯示網(wǎng)站服務(wù)器或文件系統(tǒng)內(nèi)的文件,并讓用戶與此些文件交互的一種應(yīng)用軟件。它用來(lái)顯示在萬(wàn)維網(wǎng)或局域網(wǎng)等內(nèi)的文字、圖像及其他信息。這些文字或圖像,可以是連接其他網(wǎng)址的超鏈接,用戶可迅速及輕易地瀏覽各種信肩、O
[0003]瀏覽器的核心組成部分是瀏覽器內(nèi)核,瀏覽器內(nèi)核就是瀏覽器所采用的渲染引擎。本文中將瀏覽器渲染引擎也稱為瀏覽器內(nèi)核,簡(jiǎn)稱為內(nèi)核。渲染引擎負(fù)責(zé)對(duì)網(wǎng)頁(yè)的語(yǔ)法的解釋并顯示網(wǎng)頁(yè)。渲染引擎決定了瀏覽器如何顯示網(wǎng)頁(yè)的內(nèi)容以及頁(yè)面的格式信息。瀏覽器在發(fā)生瀏覽事件時(shí),由瀏覽器內(nèi)核對(duì)當(dāng)前瀏覽的網(wǎng)頁(yè)地址(即URL)對(duì)應(yīng)的服務(wù)器發(fā)起超文本傳輸協(xié)議(HTTP)請(qǐng)求。所述HTTP請(qǐng)求是指瀏覽器通過(guò)HTTP協(xié)議向所述URL對(duì)應(yīng)的網(wǎng)頁(yè)服務(wù)器發(fā)送的數(shù)據(jù)。網(wǎng)頁(yè)服務(wù)器接收到HTTP請(qǐng)求之后,根據(jù)在對(duì)應(yīng)的HTTP請(qǐng)求中攜帶的信息生成HTTP響應(yīng),并返回給瀏覽器。瀏覽器內(nèi)核根據(jù)該HTTP響應(yīng)渲染出網(wǎng)頁(yè)。
[0004]不同的瀏覽器內(nèi)核的內(nèi)部實(shí)現(xiàn)不同,對(duì)網(wǎng)頁(yè)編寫(xiě)語(yǔ)法的解釋有所不同,性能和優(yōu)缺點(diǎn)也有所不同,在功能上、對(duì)標(biāo)準(zhǔn)的支持上以及性能上都有不同的表現(xiàn)。因此同一網(wǎng)頁(yè)在不同的內(nèi)核的瀏覽器里的渲染(顯示)效果也可能不同。
[0005]android原生瀏覽器基于webkit開(kāi)源軟件實(shí)現(xiàn)。Webkit是自由軟件,同時(shí)開(kāi)放源代碼,擁有速度快捷等優(yōu)點(diǎn),但是在兼容性和對(duì)錯(cuò)誤語(yǔ)法的容忍度等方面存在一定問(wèn)題。海豚瀏覽器開(kāi)發(fā)了自有技術(shù)的渲染引擎,在高端移動(dòng)設(shè)備上有比Android自帶渲染引擎更優(yōu)異的表現(xiàn),但不支持某些低端移動(dòng)設(shè)備。
[0006]為了給用戶提供更好的用戶體驗(yàn),為了能更加完整的在各種android機(jī)型上出色地展示各種網(wǎng)頁(yè),我們采用支持多渲染引擎的方式提升瀏覽器的性能、兼容性等方面的能力。

【發(fā)明內(nèi)容】

[0007]本發(fā)明要解決的技術(shù)問(wèn)題在于針對(duì)現(xiàn)有技術(shù)中的缺陷,提供一種android瀏覽器中支持多渲染引擎的方法及瀏覽器。
[0008]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:一種android瀏覽器中支持多渲染引擎的方法,該方法用于在android平臺(tái)上實(shí)現(xiàn)雙渲染引擎切換;
其中瀏覽器在架構(gòu)設(shè)計(jì)上,提供了一個(gè)多渲染引擎開(kāi)放接口框架;所述多渲染引擎開(kāi)放接口框架封裝了渲染引擎所需要的API接口、渲染引擎選擇器和渲染引擎切換器;包括以下步驟:
I)在瀏覽器啟動(dòng)時(shí)創(chuàng)建虛擬環(huán)境,在瀏覽器對(duì)系統(tǒng)資源操作時(shí),重指向預(yù)先創(chuàng)建的虛擬環(huán)境中;
2)渲染引擎選擇器根據(jù)android移動(dòng)設(shè)備硬件環(huán)境和軟件環(huán)境以及網(wǎng)頁(yè)與瀏覽器內(nèi)核之間的適配關(guān)系做出瀏覽器內(nèi)核選擇;
3)渲染引擎切換器根據(jù)渲染引擎選擇器的選擇觸發(fā)瀏覽器內(nèi)核切換;在切換內(nèi)核之前,先將相關(guān)資源文件存儲(chǔ)至虛擬環(huán)境中,關(guān)閉正在運(yùn)行的內(nèi)核,然后加載所選內(nèi)核,將相關(guān)資源交給所選內(nèi)核處理,實(shí)現(xiàn)雙核切換。
[0009]按上述方案,所述多渲染引擎開(kāi)放接口框架至少封裝了一個(gè)android默認(rèn)瀏覽器渲染引擎的API接口和一個(gè)自制瀏覽器渲染引擎的API接口。
[0010]按上述方案,所述自制瀏覽器為海豚瀏覽器。
[0011]按上述方案,所述渲染引擎選擇器根據(jù)android移動(dòng)設(shè)備硬件環(huán)境和軟件環(huán)境以及網(wǎng)頁(yè)與瀏覽器內(nèi)核之間的適配關(guān)系做出瀏覽器內(nèi)核選擇的具體方法為:
I)首先對(duì)設(shè)備的硬件環(huán)境和軟件環(huán)境實(shí)行打分,將設(shè)備區(qū)分為高性能設(shè)備和低性能設(shè)備。
[0012]2)默認(rèn)情況下,在低性能設(shè)備上使用默認(rèn)瀏覽器內(nèi)核,在高性能設(shè)備上使用海豚瀏覽器內(nèi)核。
[0013]3)在瀏覽網(wǎng)頁(yè)的過(guò)程中,監(jiān)測(cè)渲染引擎的執(zhí)行情況,若發(fā)生異常,則嘗試執(zhí)行內(nèi)核切換,盡量避免瀏覽器崩潰。
[0014]按上述方案,所述瀏覽器多渲染引擎的開(kāi)放接口框架位于瀏覽器底層的渲染引擎和瀏覽器上層邏輯之間。
[0015]按上述方案,所述步驟I)中預(yù)先創(chuàng)建的虛擬環(huán)境為臨時(shí)文件夾,具體為將瀏覽器加載的資源文件重指向到預(yù)先創(chuàng)建的臨時(shí)文件夾中,并將即將寫(xiě)入系統(tǒng)的操作、文件、資源寫(xiě)入私有格式文件中,創(chuàng)建完整的虛擬環(huán)境。
[0016]一種瀏覽器,包括至少兩個(gè)渲染引擎和一個(gè)多渲染引擎的開(kāi)放接口框架;所述瀏覽器多渲染引擎的開(kāi)放接口框架位于瀏覽器底層的渲染引擎和瀏覽器上層邏輯之間;
所述多渲染引擎開(kāi)放接口框架封裝了渲染引擎所需要的API接口、渲染引擎選擇器和渲染引擎切換器;
所述渲染引擎選擇器,用于根據(jù)android移動(dòng)設(shè)備硬件環(huán)境和軟件環(huán)境以及網(wǎng)頁(yè)與瀏覽器內(nèi)核之間的適配關(guān)系做出瀏覽器內(nèi)核選擇;
所述渲染引擎切換器,用于根據(jù)渲染引擎選擇器的選擇觸發(fā)瀏覽器內(nèi)核切換。
[0017]按上述方案,所述渲染引擎選擇器根據(jù)android移動(dòng)設(shè)備硬件環(huán)境和軟件環(huán)境以及網(wǎng)頁(yè)與瀏覽器內(nèi)核之間的適配關(guān)系做出瀏覽器內(nèi)核選擇的具體方法為:
I)首先對(duì)設(shè)備的硬件環(huán)境和軟件環(huán)境實(shí)行打分,將設(shè)備區(qū)分為高性能設(shè)備和低性能設(shè)備。
[0018]2)默認(rèn)情況下,在低性能設(shè)備上使用默認(rèn)瀏覽器內(nèi)核,在高性能設(shè)備上使用海豚瀏覽器內(nèi)核。
[0019]3)在瀏覽網(wǎng)頁(yè)的過(guò)程中,監(jiān)測(cè)渲染引擎的執(zhí)行情況,若發(fā)生異常,則嘗試執(zhí)行內(nèi)核切換,盡量避免瀏覽器崩潰。
[0020]按上述方案,所述渲染引擎切換器根據(jù)渲染引擎選擇器的選擇觸發(fā)瀏覽器內(nèi)核切換的具體方法為:在切換內(nèi)核之前,先將相關(guān)資源文件存儲(chǔ)至虛擬環(huán)境中,關(guān)閉正在運(yùn)行的內(nèi)核,然后加載所選內(nèi)核,將相關(guān)資源交給所選內(nèi)核處理,實(shí)現(xiàn)雙核切換。
[0021]按上述方案,所述兩個(gè)渲染引擎為android默認(rèn)瀏覽器渲染引擎和海豚自制瀏覽器渲染引擎,多渲染引擎開(kāi)放接口框架對(duì)應(yīng)地至少封裝了一個(gè)android默認(rèn)瀏覽器渲染引擎的API接口和一個(gè)海豚自制瀏覽器渲染引擎的API接口。
[0022]本發(fā)明產(chǎn)生的有益效果是:本發(fā)明將多渲染引擎支持瀏覽器擴(kuò)展到了 android平臺(tái),從而提升了 android平臺(tái)上瀏覽器的用戶體驗(yàn)、兼容性和性能。
[0023]
【附圖說(shuō)明】
[0024]下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,附圖中:
圖1是本發(fā)明實(shí)施例的結(jié)構(gòu)示意圖;
【具體實(shí)施方式】
[0025]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0026]如圖1所示,一種瀏覽器,包括至少兩個(gè)渲染引擎和一個(gè)多渲染引擎的開(kāi)放接口框架;所述瀏覽器多渲染引擎的開(kāi)放接口框架位于瀏覽器底層的渲染引擎和瀏覽器上層邏輯之間;
所述多渲染引擎開(kāi)放接口框架封裝了渲染引擎所需要的API接口、渲染引擎選擇器和渲染引擎切換器;使得同樣的瀏覽器上層邏輯模塊可以使用不同的渲染引擎。
[0027]兩個(gè)渲染引擎為android默認(rèn)瀏覽器渲染引擎和海豚自制瀏覽器渲染引擎,多渲染引擎開(kāi)放接口框架對(duì)應(yīng)地至少封裝了一個(gè)android默認(rèn)瀏覽器渲染引擎的API接口和一個(gè)海豚自制瀏覽器渲染引擎的API接口 ;
所述渲染引擎選擇器,用于根據(jù)android移動(dòng)設(shè)備硬件環(huán)境和軟件環(huán)境以及網(wǎng)頁(yè)與瀏覽器內(nèi)核之間的適配關(guān)系做出瀏覽器內(nèi)核選擇;
所述渲染引擎選擇器根據(jù)android移動(dòng)設(shè)備硬件環(huán)境和軟件環(huán)境以及網(wǎng)頁(yè)與瀏覽器內(nèi)核之間
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
香港 | 九龙县| 平阳县| 正定县| 达拉特旗| 喀喇沁旗| 林甸县| 泰安市| 大田县| 伊吾县| 兰溪市| 柳州市| 醴陵市| 丹凤县| 刚察县| 黄大仙区| 买车| 浮山县| 中西区| 南江县| 荆门市| 武城县| 文安县| 乐亭县| 吉林省| 常熟市| 金昌市| 新邵县| 当雄县| 黄梅县| 邮箱| 六枝特区| 麻栗坡县| 瓮安县| 潼南县| 保亭| 淮滨县| 巴里| 龙门县| 彰化市| 莎车县|