BREW1.0的功能有限,而BREW1.1 則豐富了很多。BREW1.1首次引入了安全類服務,ICipher可以簡單加解密信息,IHash實現數據的離散化,通過IRSA 實現非對稱安全算法。BREW1.1提供了對地址本的支持(IAddrBook和IAddrRec),將地址本作為數據庫的特例,同時鈴聲的支持(IRingerMgr)使BREW應用可以直接將音樂文件設置為手機鈴聲,更重要的是引入了位置服務接口IPosDet, 極大的豐富了BREW的應用的種類。
??????????? 內存管理方面,BREW1.1引入了三個新接口IPeek, ISource 和ISourceUtil來處理流數據。針對互聯網服務,BREW1.1給出了IWeb,IWebOpts以及IHtmlViewer使應用可以輕松訪問互連網上的HTTP服務器并顯示基本的HTML頁面。BREW1.1中的ILicense接口允許應用能控制自身的用戶使用權限,使資費方案更加靈活,而IQueryInterface則提供了獲取接口的另一種方法。
?
在我國,第一商用的版本是2.0。BREW 2.0 開始提供對藍牙的支持(IBTAG,IBTSDP和IBTSIOPORT),遺憾的是在BREW中可以使用藍牙功能的手機一直沒有在中國上市。在顯示方面,IFont可以測量和重繪文字,應用可以針對不同的內容顯示不同的字體。
針對多媒體服務,IMedia是BREW中所有多媒體對象的基類。在圖像處理方面,通過IBitmap接口可以將內存中的位圖直接在屏幕上操作,IDIB繼承于IBitmap實現了一個與設備無關的位圖結構,ITransform則可以實現對位圖縮放、旋轉等復雜一些的圖像處理。IImageCtl可以在一個帶滾動條的框架中瀏覽圖像,并且獲得圖像的屬性信息。ISprite接口實現了類似photoshop中的圖層概念,可以方便的疊加和重繪圖形。
??????????? 對于系統服務中的內存管理,IClipboard能夠是應用完成標準的copy和paste功能,不同應用間可以使用IClipboard來實現共享內存。IRamCache提供了最近最少使用頁面置換算法,是為虛擬頁式存儲管理服務的,通過堆存儲區滿足了TTL機制中的緩存功能。內存的虛擬存儲管理,是現在最通用,也是最成功的方式—— 在內存有限的情況下,擴展一部分外存作為虛擬內存,真正的內存只存儲當前運行時所用得到信息。這無疑擴充了內存的使用效率,極大地提高了CPU的并發度。虛擬頁式存儲管理,則是將進程所需空間劃分為多個頁面,內存中只存放當前所需頁面,其余頁面放入外存的管理方式。另外,BREW 2.X中的IUnzipAStream支持流數據的解壓縮和存儲。
??????????? 對于電信服務,IVocoder可以捕捉和播放話音信道鵝的內容以及其他的音頻文件。
??????????? 對于網絡服務,IDNS開始聯網應用提供 DNS 查詢功能。
對于安全服務,BREW2.0開始提供信道安全方法,ISSL支持SSL/TLS的網絡連接,IX509Chain被用來管理和驗證X.509 的證書鏈,IHashCTX進一步強化了hash數據的處理功能。也就是說,到了BREW2.0,BREW所提供的9大類服務基本成型。
BREW2.1對于多媒體服務中的三維圖像處理提供了支持(I3D,I3DModel和I3DUtil),但由于效果不太理想,在更高版本中廢棄了這三個接口。同時,BREW2.1提供了對open GL ES 的支持(圖11-11)。
?
?
?????? BREW3.x相對于BREW2.x 有了很大的變化,重寫了很多接口的內部實現。3.0作為一個過渡版本沒有在中國商用,BREW3.1.5是一個穩定的商業版本,而BREW3.1.5SP01則進一步增強了BREW3.1.5的功能并解決了其中存在的一些問題。
??????????? 多媒體服務方面,IBitmapDev提供了眾多的方法來處理設備位圖。通信服務方面,IPort提供了一個通用的接口來實現雙向數據流的收發。系統服務方面,IAClockCtl允許創建模擬時鐘的顯示,IRscPool可以管理資源被訪問的生命周期。IThread提供了類似多線程的方法,使并行處理更加方便。網絡方面,IWebEng允許用戶開發自己的協議棧(基于客服端/服務器模式的協議棧)。
文件系統服務方面,愛上支持4GB以上的文件空間,支持MMC/SD等外存卡的讀寫,統一了圖片/音樂/視頻/主題/文字/聲音/鏈接文件路徑,增加了ACL目錄訪問權限控制。BREW 3.X中的資源管理提供了控制資源訪問的一般方法,能夠協調和管理資源的獲取和釋放,當資源狀態發生變化時向注冊的相關對象發送通知,并可以動態地判定一個應用使用相關資源時的優先級(圖11-12)。
同時,BREW3.X支持復雜短信功能,完全實現短信協議 IS-637。就短信收發而言,可以對短信屬性配置和讀取接收方號碼(MO),發送方號碼(MT),時間信息等屬性,短信內容包括ASCII,UNICODE和BINARY。就短信管理而言,可以在手機和RUIM卡上存儲和讀取短信,刪除短信,更新短信,實現統一的管理。
?
?