jinfeng_wang

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

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

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

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

          2. 進行BREW 最基本的技術(shù)層次的學習(對BREW 最基本的事件驅(qū)動機制的了解,
          如何創(chuàng)建接口,clsid是什么?如何一步步用vc 開發(fā)一個動態(tài)應用,每一步驟的作用
          ,resource,mif 工具的使用,helloworld程序如何被創(chuàng)建,如何進行事件處理的大
          致流程,如何將BREW 動態(tài)應用轉(zhuǎn)變?yōu)閙od 文件下載到手機.....等等等等,這
          些基本的內(nèi)容可以通過一般的BREW 文檔學習到,qualcomm 網(wǎng)站上有一篇很好的brew
          ?基本知識學習文檔,study brew from scratch,另外網(wǎng)上有兩本關(guān)于BREW 的英文
          ebook,也可作為入門資料,有一本BREW 手機游戲開發(fā)的中文書也可以作為該階段的
          入門資料)
          ->該步驟同時適合OEM,Developer
          ->參考資料:
          1. brew_app_from_scratch.pdf
          2. BREW Programming guide(海信).pdf
          3. starting_brew.pdf
          4. 深入BREW 游戲開發(fā)
          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 采用面向?qū)ο蟮慕涌隗w系結(jié)構(gòu)對外提供服務.
          理解接口機制將有助于理解調(diào)用所謂的接口API(實際上是宏映射)是如何最終調(diào)用
          到AEE 層的真正函數(shù),定義一個接口究竟底層作了什么,BREW 中的接口究竟是如何
          創(chuàng)建的等等(該機制非常非常好的學習文檔是aee.h 和example下的mediaplayer,aee
          .h 里的宏,就是接口機制的實現(xiàn)手段,mediaplayer 更是將brew 的接口機制發(fā)揮的
          淋漓盡致)
          ->該步驟適合有興趣的Developer,因為并非所有的Developer 需要知道接口機制
          ,將IXXX_XXX 理解為真正的函數(shù),熟練的運用他們,而不知道他們的底層實現(xiàn)機制
          也不會妨害Developer 的開發(fā),但是對于需要開發(fā)Extention Interface 的Developer
          ,理解BREW 接口機制是必須的. 該步驟對于OEM 而言是必須的.因為如果不理解BREW
          ?接口機制的話,BREW OEM 所作的Porting 或者Modify 是盲目的,因為你根本不明
          白上層調(diào)用所謂的接口函數(shù)最終是如何映射到底層的,這樣你無法清晰地發(fā)現(xiàn),問題
          究竟在哪里?而對于Porting 新的Static ExtentionInterface,則更加必須掌握接
          口機制,比如IIMAGE,IMEDIA 這兩個抽象接口的OEM 層新format 接口的Portng,你
          必須掌握接口機制,否則你不可能自己去實現(xiàn)一個接口,讓上層很好的調(diào)用.
          ->參考資料:
          1. BREW_Architecture_Extensions.pdf
          2. BREW 究竟是什么-BREW 本質(zhì)之我見.pdf(筆者)
          3. deep in BREW’s Interface .pdf(筆者)
          4. AEE.h
          5. Mediaplayer.c
          6.BREW部分接口源碼

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

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

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

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

          8.BREW 面向OEM 的核心機制學習:學習如何在Task 中啟動BREW,BREW 事件如何
          分發(fā),啟動,關(guān)閉一個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 層實現(xiàn)需要采用異步機制來調(diào)用系統(tǒng)服務,此時將綜合運用以上機制,應該
          熟悉這些機制.
          ->參考資料:
          1. 深入BREW 抽象接口機制.pdf(筆者)
          2. BREW 分層機制闡述.pdf(筆者)
          3. PK 相關(guān)文檔

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

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

          11.OEM Notes 的經(jīng)常性關(guān)注:經(jīng)常性登陸B(tài)REW OEMExtranet 下載BREW OEM Notes
          ,有助于拓寬解決一些BREW Porting 的方法,思路,即便不是馬上能用上,也積累
          了一些經(jīng)驗
          ->僅適合OEM
          ->參考資料:OEM Extranet 資料
          posted on 2007-03-16 13:19 jinfeng_wang 閱讀(962) 評論(0)  編輯  收藏 所屬分類: ZZ
          主站蜘蛛池模板: 兴安盟| 宜州市| 乌鲁木齐县| 郴州市| 陵川县| 沈丘县| 特克斯县| 金溪县| 郑州市| 甘孜县| 沙雅县| 福海县| 辛集市| 花莲县| 泸水县| 江孜县| 平远县| 界首市| 大姚县| 湟源县| 武义县| 堆龙德庆县| 米易县| 广平县| 孟津县| 革吉县| 大连市| 沙洋县| 玉溪市| 吉木萨尔县| 禄劝| 西城区| 迁西县| 尉氏县| 南阳市| 鄂州市| 南通市| 健康| 合作市| 望城县| 望奎县|