一種WAP嵌入式瀏覽器的設(shè)計(jì)
摘要:為解決傳統(tǒng)瀏覽器可移植性差、效率比較低的問(wèn)題,設(shè)計(jì)出一種基于WAP的嵌入式瀏覽器。與傳統(tǒng)瀏覽器比較,該瀏覽器分為各個(gè)模塊同時(shí)去掉一些沒(méi)有用的模塊,并采用java語(yǔ)言實(shí)現(xiàn)每個(gè)模塊的設(shè)計(jì)。重點(diǎn)分析了解析模塊以及布局模塊設(shè)計(jì)。實(shí)驗(yàn)結(jié)果表明,該瀏覽器比傳統(tǒng)瀏覽器的可移植性高,能夠很好的移植到ARM平臺(tái)上,效率得到了很大提高。
本文引用地址:http://m.butianyuan.cn/article/150930.htm瀏覽器主要完成實(shí)現(xiàn)下載網(wǎng)頁(yè),解析網(wǎng)頁(yè)腳本語(yǔ)言,最后再合理的顯示給用戶的任務(wù)。WAP(wireless ApplicatiON Protocol),即無(wú)線應(yīng)用協(xié)議,亦稱無(wú)線互聯(lián)網(wǎng)協(xié)議。WAP協(xié)議的功能:用戶只要使用具有WAP功能的移動(dòng)終端諸如移動(dòng)電話之類的無(wú)線客戶端,就會(huì)像電腦IE、搜狗等PC瀏覽器一樣,查看各種網(wǎng)頁(yè)信息,展示Intemet內(nèi)容。WAP由一系列通信協(xié)議組成。WAP的協(xié)議棧采用了層次化設(shè)計(jì),從而為應(yīng)用系統(tǒng)的開發(fā)提供了一種可伸縮和擴(kuò)展的環(huán)境。每層協(xié)議棧均定義了相應(yīng)的接口??杀簧弦粚訁f(xié)議所使用,也可被其他服務(wù)或應(yīng)用程序所直接應(yīng)用。WAP的各層協(xié)議如圖1所示。
圖1 WAP的各層協(xié)議
本文分析了WAP嵌入式瀏覽器的主要功能模塊、工作流程、總體設(shè)計(jì),重點(diǎn)分析解析模塊和布局模塊,最后展望WAP瀏覽器發(fā)展未來(lái)。
1 嵌入式瀏覽器概述
一般情況下,嵌入式瀏覽器包括兩個(gè)功能:一是支持如HTTP、WAP傳輸協(xié)議;二是能夠在嵌入式設(shè)備中運(yùn)行傳輸協(xié)議,并有標(biāo)記語(yǔ)言的功能以及能夠根據(jù)使用者的需求進(jìn)行處理各種情況。
1.1 瀏覽器功能模塊
如圖2所示,在本文設(shè)計(jì)中,瀏覽器主要模塊有:繪圖模塊、布局模塊、數(shù)據(jù)處理模塊、DOM樹模塊。這樣做的目的是確定分層體系結(jié)構(gòu),使每個(gè)層和相鄰的進(jìn)行交流,和不相鄰的不進(jìn)行交互,符合軟件工程“高內(nèi)聚,低耦合”的思想。其中:
圖2 功能模塊
繪圖模塊:利用對(duì)XML文件解析的結(jié)果生成DOM樹和布局模塊(RENDER)樹,同時(shí)生成瀏覽器窗口及相應(yīng)的控件,并在屏幕上排版顯示。
布局模塊:對(duì)生成的DOM樹中得到樣式的有關(guān)信息,如居中,字體等,組織布局、顯示XML元素等內(nèi)容。數(shù)據(jù)處理模塊:數(shù)據(jù)處理模塊包括處理XML和images。對(duì)訪問(wèn)的網(wǎng)頁(yè)XML文件進(jìn)行解析處理,包括表格、圖片、文字并生成相應(yīng)的DOM樹。
DOM樹模塊:DOM(文檔對(duì)象模型)是XML文件解析后的結(jié)果。它的內(nèi)容包括了當(dāng)前XML文件中所有的元素、元素的子元素、元素的屬性、元素的樣式、元素的事件等。在對(duì)象樹模型中,文件的每一節(jié)點(diǎn)都被稱為屬性。而且它是完整的,對(duì)文件最小細(xì)節(jié)它都允許進(jìn)行模型化而且可以訪問(wèn)。它也是對(duì)修改最不敏感的一種模型。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論