- 相關推薦
基于BREW的無線數據業務開發論文
摘要:本文一連了BREW開發開臺,并以一基于BREW的單機版手機游戲開發為例,著重用述基于BREW的無線數據業務開發漉程。
關鍵詞:BREW 無線數據業務 SDK 接口
中圖分類號:TN92 文獻標識碼:A 文章編號:1674-098X(2008)ll(a)-0232-02
1前言
當今,移動數據通信作為移動通信與數據通信的結合點,有著廣闊的市場與發展前景。新一代移動通信領域競爭的重點是數據業務的競爭。到2005年,移動數據業務將占到無線業務量的70%,數據業務已經成為各大運營商之間競爭的關鍵。為了爭搶數據業務這塊市場,國內的運營商都在積極發展自己的業務市場。
2關于BREW
BREW,即無線二進制運行環境(Binary Runtime Environment for Wireless),是高通公司推出的基于CDMA網絡“無線互聯網發射平臺”上增值業務開發運行的基本平臺。相比其他開發環境,BREW是一個更底層的技術。它可以把手機從一個普通的移動電話機變成一個有無線網絡接入功能的移動終端。并提供一個高效、低成本、可擴展和熟悉的應用程序執行環境(AEE)。同時,通過BREW接口功能,供應商可以提供成套的完整的資訊、商務、娛樂功能。它的內核類還能提供諸如藍牙技術、全球定位系統(GPS)和基于數據業務的電話等服務。由于需要更少的內部應用程序開發和集成任務,OEM(Original Equipment Manufacturer,原始設備生產商)可以更加快速地推出新設備。用戶可以選擇和下載適合自己喜好的無線軟件。
3 BREW數據業務的開發流程
由于Brew開發環境對眾多無線手持設備的支持,基于Brew的應用開發只需考慮在Brew環境下編寫應用程序即可,而不需要對每個新的電話型號進行應用程序修改。在創建Brew應用程序時,需要用到:BREW軟件開發包(SDK)、Windows XP(或者Windwows2000)操作系統和ARM編譯器。Brew SDK嵌入到Visual C++里面,它整個的編寫與編譯過程跟一般c++程序是一樣的,所不同的是在生成DLL文件時要用到Brew的一些文件:Brew SDK提供的BrewAEE頭文件、用于創建簡單模塊的Brew助手源文件、小程序源文件和頭文件、MIF編輯器創建的MIF文件和由資源編輯器編譯成的資源頭文件。當然資源頭文件有時也是可選的。其中Brew AEE提供了一個使用C或c++開發小程序和共享模塊的平臺,它是一個能增強可用性的事件驅動結構類。
Brew中對所有小程序事件的處理都放在HandleEvent函數中,發送給小程序的事件包括鍵盤、對話框和控件更改事件等。它為Brew提供了所有的接口信息,每個接口封裝了一組資源和允許管理這些資源的方法。下面具體以一簡單的單機版游戲為例,闡述Brew無線數據業務的開發流程:
(1)在VC6.0的編輯環境下建立一個Brew工程文件,同時建立MIF文件。
(2)建立全局變量結構體,該結構體主要包含程序中用到的接口實例。另外,在處理小程序事件響應時,要用到狀態(根據不同的程序而定,有的程序不需要定義),因此還要定義一個能指示手機頁面狀態的數據結構。一般把這些數據結構都放在一個頭文件里,以方便隨時加載。包含接口實例的結構體主要包含了以下內容:typedef struct _QtestApp{AEEApplet a;//結構體的首地址上強制性存放了一個AEEApplet的實例,里面包含了一些基本的接口實例。IImage*m_pBackBarImg,//指示加載圖像實例IMenuCtl* m_pMenu,//指示主菜單實例ITextCtl* m_pPnum;//用戶將游戲推薦給好友,指示好友手機號碼的文本控件實例;ITextCtl* m_pNiName,//指示好友呢稱的文本控件實例;IStatic* m_pIStatic;//指示靜態文本控件的實例,(注:Istatic接口與ItextCtl雖然都能創建文本控件,但兩者有本質的區別:前者允許創建靜態文本控件,該控件的文本信息都是只讀的,不能修改,后者創建的文本控件的文本信息可以編輯修改)}Qtest
(3)在初始化函數中初始化以上接口實例。ISHELL_C reateInstance(pApp- >a.m_pIShell,AEECLSID_TEXTCTL,(void**)(&pApp->m_pPnum》 //初始化指示好友手機號碼的文本控件實例ISHELL_C reateInstance(pApp- >a:m_pIShell,AEECLSID_TEXTCTL,(void**)(&pApp->m_pNiName》//初始化指示好友呢稱的文本控件實例
(4)處理消息事件
Brew程序的所有消息都放在Handl_eEvent函數中處理。對一般單機版小游戲,程序要處理以下的事件響應:EVT_APP_RESUME://應用程序恢復,當用戶接收呼叫或SMS消息時,應用可以自動暫停并在隨后恢復運行。EVT_APIx_START://啟動主應用程序,加載主菜單EVT_KEY://處理手機上所有按鍵響應
如:按手機上的SOFT1鍵把游戲推薦給好友的處理過程如下,
if(ITAPI_SendSMS(pITapi,cc, (char*)pzPhone,O,NULL, pApp->a.m_pIShel)= =SUCCESS)ISHELL_SetTimer(pApp->a.m_pIShell, BANNER_ DISPLAY_TIMER,(PFNNOTIFY)My_DisplayInScreen, (void*)pApp)
//其中cc指代輸入的好友名字,pzPhone指代好友手機號碼//ISHELL_SetTimer是個回調函數,
它表示把游戲按輸入的手機號發送給好友后等待BANNER_DISPLAY_TIMER時間返回到原來的推薦好友界面。
EVT_COMMAND://處理菜單命令,一般指放在資源編輯器中的菜單響應以上通過二個簡單的小例子介紹應用程序的編寫過程,編寫好的應用程序在Brew模擬器上通過后,通過ARM編譯器生成mod文件。以游戲為例,將程序提交到聯通服務器上供聯通用戶下載,所要提交的程序清單分別為bar文件(資源編輯器編譯后生成的文件)、mif文件和mod文件(應用程序編譯后生成的文件),其中bar文件在有些程序里面是可選的。
使用BREW AppLoader將應用程序上傳到手機里面,但是要注意提交的應用程序位置。以游戲為例,如下所示的程序存放位置:
/brew/sch/qtest.mif -//由BREW
MIF編輯器生成
/brew/sch/qtest/-qtest.bar -//由
BREW資源編輯器生成
/brew/sch/qtest/ qtest.mod -//使
用ARM BREW編譯器編譯和鏈接
/brew/sch/qtest/ qtest.sig -//數字簽名
/brew/sch/qtest/qtest.txt -//應
用程序要訪問的文件
上傳到電話上的所有目錄和文件名都必須采用小寫形式。對于附加的文件(如文本)也要復制到應用程序目錄,或應用程序目錄的子目錄。數據簽名是使用BREWTestSig Generator生成的,.sig文件名的第一部分必須與.mod文件名的第一部分相同。把文件上載到手機后要重新啟動手機,否則會提示出錯。
將提交的應用程序清單通過TRUEBREW測試以后,可以放在運營商的下載服務器上。QUALCOMM將使用數字簽名對用戶的應用程序簽名。運營商下載服務器和客戶手持設備將查找該簽名以對應用程序下載進行驗證。
4結語
BREW平臺提供了完整的端到端解決方案,它把無線數據業務帶到了一個嶄新的發展天地,使數據業務的分銷渠道更加完善。隨著大眾對數據增值業務的需求發展,相信Brew的開發變得越來越普及。
234科技創新導報Science and Technology Innovation Herald
參考文獻
[l]移動通信在線BREW是什么?[EB/OL]
[21許江偉,陳平.BREW平臺上的手機軟件開發[J].計算機應用,2003,10.
[3] QUALCOMM Incorporated.BREW2.0SDK用戶指南[M/CD].QUALCOMM Incorporated,2002.
【基于BREW的無線數據業務開發論文】相關文章:
基于制造業優化產品開發流程的研究的論文04-26
基于GSM與ISM無線網絡的汽車求救與防盜系統論文11-26
基于手機無線局域網的架構與應用05-01
基于XML的GIS工程研究與開發05-03
基于WE904的實時圖像無線傳輸設計05-01
基于無線數傳的酒后駕車監測系統的研究04-27
無線局域網組網論文04-30
無線局域網論文全文04-30
無線電波的傳播論文04-28