jinfeng_wang

          G-G-S,D-D-U!

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            400 Posts :: 0 Stories :: 296 Comments :: 0 Trackbacks
          BREW 學習之路-解析BREW 學習過程
          東方欲曉-毛曉冬
          2005-10-10
          首先聲明,我不是BREW 高手,我只是一位普通的BREW OEM 工作者.只是在自己不斷
          學習BREW 的過程中,總結了一些學習BREW 的方法,或者說是要學好BREW 應該一步
          步怎么走,循序漸進的看些什么,學些什么,現在將這些心得體會和大家分享,交流

          (注,以下區分OEM 和Developer,OEM 是指手機OEM 廠商作BREW Porting 的,Developer
          ?是指作BREW 應用開發的,即CP.每一步都分析對于這兩種人的必要性)

          1. 對BREW 有最基本,最淺顯的了解(通過網站關于BREW 的新聞,介紹,對BREW
          ?有個非技術角度的總體概念,知道他出現的用途是什么,在無線移動產業中處于什
          么位置,有什么優勢等等,BREW 可以用來作些什么好玩的東東),激發對BREW 的初
          步熱情.
          ->該步驟同時適合OEM,Developer
          ->參考資料:
          1. 請baidu 上進行BREW 關鍵字搜索
          2. BREW Overview.pdf

          2. 進行BREW 最基本的技術層次的學習(對BREW 最基本的事件驅動機制的了解,
          如何創建接口,clsid是什么?如何一步步用vc 開發一個動態應用,每一步驟的作用
          ,resource,mif 工具的使用,helloworld程序如何被創建,如何進行事件處理的大
          致流程,如何將BREW 動態應用轉變為mod 文件下載到手機.....等等等等,這
          些基本的內容可以通過一般的BREW 文檔學習到,qualcomm 網站上有一篇很好的brew
          ?基本知識學習文檔,study brew from scratch,另外網上有兩本關于BREW 的英文
          ebook,也可作為入門資料,有一本BREW 手機游戲開發的中文書也可以作為該階段的
          入門資料)
          ->該步驟同時適合OEM,Developer
          ->參考資料:
          1. brew_app_from_scratch.pdf
          2. BREW Programming guide(海信).pdf
          3. starting_brew.pdf
          4. 深入BREW 游戲開發
          5. Apress.Developing.Software.for.the.QUAL
          COMM.BREW.Platform.eBook-LiB.rar
          6. Wordware.Wireless.Game.Development.In.C.
          Cpp.With.BREW.eBook-LiB.chm

          3. ?深入理解BREW 接口機制:BREW 采用面向對象的接口體系結構對外提供服務.
          理解接口機制將有助于理解調用所謂的接口API(實際上是宏映射)是如何最終調用
          到AEE 層的真正函數,定義一個接口究竟底層作了什么,BREW 中的接口究竟是如何
          創建的等等(該機制非常非常好的學習文檔是aee.h 和example下的mediaplayer,aee
          .h 里的宏,就是接口機制的實現手段,mediaplayer 更是將brew 的接口機制發揮的
          淋漓盡致)
          ->該步驟適合有興趣的Developer,因為并非所有的Developer 需要知道接口機制
          ,將IXXX_XXX 理解為真正的函數,熟練的運用他們,而不知道他們的底層實現機制
          也不會妨害Developer 的開發,但是對于需要開發Extention Interface 的Developer
          ,理解BREW 接口機制是必須的. 該步驟對于OEM 而言是必須的.因為如果不理解BREW
          ?接口機制的話,BREW OEM 所作的Porting 或者Modify 是盲目的,因為你根本不明
          白上層調用所謂的接口函數最終是如何映射到底層的,這樣你無法清晰地發現,問題
          究竟在哪里?而對于Porting 新的Static ExtentionInterface,則更加必須掌握接
          口機制,比如IIMAGE,IMEDIA 這兩個抽象接口的OEM 層新format 接口的Portng,你
          必須掌握接口機制,否則你不可能自己去實現一個接口,讓上層很好的調用.
          ->參考資料:
          1. BREW_Architecture_Extensions.pdf
          2. BREW 究竟是什么-BREW 本質之我見.pdf(筆者)
          3. deep in BREW’s Interface .pdf(筆者)
          4. AEE.h
          5. Mediaplayer.c
          6.BREW部分接口源碼

          4. BREW 面向開發的核心機制的深入熟悉和理解:主要是事件分發,處理機制,Timer
          ?機制,Alarm 機制,Notify 機制,Callback 機制,suspend,resume,background
          ?等等
          ->該步驟同時適合OEM,Developer
          ->參考資料:
          1. deep in Event-Driven.pdf(筆者)
          2. 深入BREW 消息處理機制.pdf(筆者)
          3. SDK 幫助文檔

          5.BREW 開發代碼的熟悉,積累以及SDK API 的熟悉:
          主要是通過閱讀別人的應用(Example 是一個很好的示例代碼)加深對BREW 接口函
          數使用的理解,同時再結合自己的不斷鍛煉,再結合查閱BREW SDK 幫助文檔.使得
          自己能加深對BREW 各接口使用的理解,同時積累開發BREW應用程序的經驗 (同時注
          意有關C++如何開發BREW應用以及注意點)
          ->該步驟適合Developer,同時適合感興趣的OEM
          ->參考資料:SDK 幫助文檔以及別人的應用源碼

          6.進行(你負責的或者是感興趣的)BREW 模塊(接口)
          的深入學習:這是OEM 的重要學習內容,原則上對一個模塊的真正學習,應該包括:
          從整體上把握該接口的作用,它為開發者提供了什么功能,開發者利用它能做什么?
          從開發者的角度,最典型的使用該接口的方法和順序(過程)是如何的?該接口的AEE
          ?層(如果看的到代碼的話)和O
          EM 層是具體如何實現的,這點的學習有助于清楚該接口對外提供的服務在底層是究
          竟如何實現的?如果該接口存在異步調用系統服務的話,它和系統是如何交互的,如
          何進行異步service 的調用?如果該接口是一個抽象接口,具體實現在OEM 層的話,
          要清楚該接口實現的特點,如何擴展該接口
          ->原則上只適合OEM,因為Developer 是看不到代碼的.
          ->參考資料:
          1. SDK 幫助文檔
          2. QCT Release 的BREW 平臺代碼 (主要是各Interface的具體實現)

          7.BREW 模塊加載,應用啟動機制學習:可以通過AEEModGen.c,AEEAPPGen.c 以及
          mod 文件的makefile 深入學習BREW App 的創建過程,Module 的加載過程
          ->該步驟同時適合OEM,Developer,對于OEM,因為存在寫靜態應用的可能性,所
          以對于靜態應用加載的特殊過程(需要提供的特殊load)需要熟悉.
          ->參考資料:
          1. AEEModGen.c,AEEAppGen.c,makefile of mod
          2. 深入BREW 模塊加載機制.pdf(筆者)

          8.BREW 面向OEM 的核心機制學習:學習如何在Task 中啟動BREW,BREW 事件如何
          分發,啟動,關閉一個BREW應用的整個過程,oem_notify 機制,抽象接口機制,Interface
          ?Register 機制,BREW 分層概念,app stack,如何傳遞Key Event,App Context,
          Memory Manager,Object Manager,Callback,Systemcallback,SystemObject 等
          等面向OEM 層的BREW 核心機制
          ->該步驟僅適合OEM,因為Developer 不可能使用這些機制.對于OEM,通常某些接
          口的OEM 層實現需要采用異步機制來調用系統服務,此時將綜合運用以上機制,應該
          熟悉這些機制.
          ->參考資料:
          1. 深入BREW 抽象接口機制.pdf(筆者)
          2. BREW 分層機制闡述.pdf(筆者)
          3. PK 相關文檔

          9.BREW 接口驗證機制的學習: 主要是學習PEK 工具的使用,這樣能經常性的來驗
          證BREW 接口Porting 的完整性.同時PEK 中的OAT 源碼也是學習接口使用的很好資
          料.通常,對于一個擴展的接口,需要提供擴展的OAT測試module,所以需要熟悉這
          些.
          ->該步驟僅適合OEM
          ->參考資料:PEK 相關文檔

          10.BREW UI 機制:主要學習BUIT(現在改名為BUIW)和UIOne.這兩種機制主要
          用來進行UI 開發.由于BUIT 大量使用了設計模式,所以初學較難.
          ->同時適合感興趣的OEM,Developer
          ->參考資料:
          1. BUIT SDK
          2. BUIT Example
          3. AppMgr 3.x

          11.OEM Notes 的經常性關注:經常性登陸BREW OEMExtranet 下載BREW OEM Notes
          ,有助于拓寬解決一些BREW Porting 的方法,思路,即便不是馬上能用上,也積累
          了一些經驗
          ->僅適合OEM
          ->參考資料:OEM Extranet 資料
          posted on 2007-03-16 13:19 jinfeng_wang 閱讀(962) 評論(0)  編輯  收藏 所屬分類: ZZ
          主站蜘蛛池模板: 漳平市| 南木林县| 新沂市| 濮阳市| 大同县| 徐闻县| 新宾| 云林县| 邵武市| 苍山县| 安庆市| 安康市| 汨罗市| 黑山县| 万源市| 文成县| 邢台市| 海阳市| 酉阳| 亚东县| 凌海市| 苍山县| 丘北县| 青龙| 包头市| 库伦旗| 太仓市| 淅川县| 都江堰市| 印江| 金平| 禄劝| 惠水县| 新宁县| 茂名市| 武邑县| 华亭县| 廉江市| 河源市| 鄂尔多斯市| 青神县|