基于WAP的嵌入式瀏覽器設計
目前,以計算機和軟件為核心的數(shù)字化技術取得迅猛發(fā)展,機頂盒、信息家電等新產(chǎn)品的出現(xiàn)讓人們開始關注嵌入式系統(tǒng),嵌入式瀏覽器也隨之開始被關注。瀏覽器主要完成實現(xiàn)下載網(wǎng)頁,解析網(wǎng)頁腳本語言,最后再合理的顯示給用戶的任務。WAP(wireless Application Protocol),即無線應用協(xié)議,亦稱無線互聯(lián)網(wǎng)協(xié)議。WAP協(xié)議的功能:用戶只要使用具有WAP功能的移動終端諸如移動電話之類的無線客戶端,就會像電腦IE、搜狗等PC瀏覽器一樣,查看各種網(wǎng)頁信息,展示Intemet內容。WAP由一系列通信協(xié)議組成。WAP的協(xié)議棧采用了層次化設計,從而為應用系統(tǒng)的開發(fā)提供了一種可伸縮和擴展的環(huán)境。每層協(xié)議棧均定義了相應的接口??杀簧弦粚訁f(xié)議所使用,也可被其他服務或應用程序所直接應用。WAP的各層協(xié)議如圖1所示。
本文引用地址:http://cafeforensic.com/article/150934.htm
本文分析了WAP嵌入式瀏覽器的主要功能模塊、工作流程、總體設計,重點分析解析模塊和布局模塊,最后展望WAP瀏覽器發(fā)展未來。
1 嵌入式瀏覽器概述
一般情況下,嵌入式瀏覽器包括兩個功能:一是支持如HTTP、WAP傳輸協(xié)議;二是能夠在嵌入式設備中運行傳輸協(xié)議,并有標記語言的功能以及能夠根據(jù)使用者的需求進行處理各種情況。
1.1 瀏覽器功能模塊
如圖2所示,在本文設計中,瀏覽器主要模塊有:繪圖模塊、布局模塊、數(shù)據(jù)處理模塊、DOM樹模塊。這樣做的目的是確定分層體系結構,使每個層和相鄰的進行交流,和不相鄰的不進行交互,符合軟件工程“高內聚,低耦合”的思想。其中:
繪圖模塊:利用對XML文件解析的結果生成DOM樹和布局模塊(RENDER)樹,同時生成瀏覽器窗口及相應的控件,并在屏幕上排版顯示。
布局模塊:對生成的DOM樹中得到樣式的有關信息,如居中,字體等,組織布局、顯示XML元素等內容。數(shù)據(jù)處理模塊:數(shù)據(jù)處理模塊包括處理XML和images。對訪問的網(wǎng)頁XML文件進行解析處理,包括表格、圖片、文字并生成相應的DOM樹。
DOM樹模塊:DOM(文檔對象模型)是XML文件解析后的結果。它的內容包括了當前XML文件中所有的元素、元素的子元素、元素的屬性、元素的樣式、元素的事件等。在對象樹模型中,文件的每一節(jié)點都被稱為屬性。而且它是完整的,對文件最小細節(jié)它都允許進行模型化而且可以訪問。它也是對修改最不敏感的一種模型。
1.2 網(wǎng)頁工作流程
數(shù)據(jù)從URL發(fā)出一個網(wǎng)頁請求,提交到通信模塊,通信模塊得到數(shù)據(jù)之后,交給數(shù)據(jù)處理模塊進行解析。生成DOM樹,然后布局模塊會根據(jù)DOM樹上的節(jié)點進行布局整理,同時將布局信息存儲到DOM樹中,最后繪圖模塊會對客戶端進行繪制。一般情況下,瀏覽器中看到的就是繪圖模塊的繪制效果。頁面訪問流程如圖3所示。
評論