饒榮慶 -- 您今天UCWEB了嗎?--http://www.ucweb.com

          3G 手機開發網

             :: 首頁 :: 聯系 :: 聚合  :: 管理
            99 Posts :: 1 Stories :: 219 Comments :: 0 Trackbacks

          項目的由來

          去年10月份左右,個人開發了一個足球即時軟件,在此構建的一個ui,加上一些解釋wml的一些項目,決定把兩者組合起來,開發一可用的瀏覽器,--- 這就是最此的想法。

          經過大概一個月左右時間實現了下,然后發布出來,但這個瀏覽器還不是一個可用的東西。

          這個就是為什么有這個開發日志的由來,我想再接下來的時間里,對它進行二次開發,進行重構。

          這篇文章開始的名字是:
          重溫Wap Explorer之主頁從wml構建
          想來沒碰j2me也有好幾個月了,很是想念它,所以就動用了這幾天的時間來重新構建一個主頁出來,以前Wap Explorer的主頁完全是構建一個class,然后在這個class里面添加那些控件顯示出來的,
          這幾天我也不停的重構wml解釋引擎,跟wap UI部件,昨天終于把主頁重構完畢,發個帖出來,讓大家欣賞下。也算是報答各個網友的關心。

          現在我把文章的名字變了下,改成重構Wap Explorer 使之可以成為一個商業產品?,之所以加個?號,是因為一個成熟的商業產品并不是想像的那么簡單。
          不過有一點是可以肯定的,那就是每天不斷的重構,久了,一些東西就會顯現出來,很多不明朗跟不明白的東西都會跑出來,這是一件很有趣的事情。
          以后我會以開發日志的形式更新這個帖子,以后的日志就不寫到這里了,直接跟帖,有興趣的朋友可以在這里討論,砸磚。
          我很希望看到這樣的情況發生
          先看看圖片,
          然后再看看那些主頁跟幫助的wml

          項目開發日志
          5月23日,
          1. 昨天運行軟件的時候,發現出現了很多問題,1,wml解釋慢了點,2,打開一些異常的url會出現程序崩潰,3,軟件運行久了就會出現內存溢出。
          2. 今天重點解決的是wml解釋引擎優化,網絡下載優化等
          3. 恩。
          對了。你有沒有研究http下載速度問題
          比如你獲取input然后,讀取長度,然后在對長度進行分割,同時啟動線程對那些分割進行下載,這樣速度會快很多
          4. 不過如果設計的好的話,同時啟動2個線程去讀取數據到是可以的,特別是讀取圖片的時候,一定要同時開啟2個線程去讀取,不然的話,慢啊
          5. 關閉所有日志輸出可以快很多。比如我打開日志輸出輸掉是解釋一個比較大的wml是2秒,關閉的話0.8秒左右(不過這個日志的輸出,量比較大)
          6. 在采用kxml解釋引擎的時候,發現kxml下載網絡數據的時候,會丟失數據包,所以解釋的時候,wml變了形狀,甚至是出現異常情況,導致程序崩潰,所以今天要解決的問題是自己實現下載機制,并采用多線程的技術進行下載。
          7.

          5月22日,
          8. 今天重點重構一個下載進度條,但是這個下載進度條要人性化一點。怎么做了,上網去找下有沒有這方面的資料
          9. 下載進度條搞定,不過,很可惜,設計的不怎么好看。這個問題也解決了,進度條也好看多了

          10. 開始設計Cokie跟緩存功能,設計初期就遇到了困難,出現cache死鎖問題。
          超鏈接支持打電話的功能了
          5月21日,
          11. 繼續修正了一些bug,給字體的標簽進行解釋。
          12. 今天給字體加了個解釋顏色的功能,比如標記<big color=”fff”>Fox</big>就可以實現不同樣式的字體了。哈
          13. 實現了一個打電話的功能,發短信,發彩信的功能
          14. 寫了一個help的wml跟main.wml哈哈,我可以成功的解釋這些wml,
          15. 還沒實現的功能有input,selectOption跟img等標記
          16. 重構了一個關于退出事件的方式,決定采用時間鏈的形式,給一個class傳入一個事件代碼
          17. 超鏈接支持打電話的功能了

          5月20日,
          18. 今天重構了WapPage的設計,雖然主頁不夠完美,比如有些標記支持的不好,但是這個是kxml解釋引擎的事情,還有一個解決了問題是可以支持,用戶查看狀態的問題了,還差一個下載狀態的UI,不過應該很簡單。
          19. 重構了MainPage的設計,設計成從wml文件中讀取數據然后顯示出來
          20. 整天想這些東西真的很煩惱
          5月19日,
          1. 今天是禮拜6,我很開心,昨天晚上回到家,搞定了WapPage的一些重構,不過還差很多,比如關于瀏覽下拉頁面的時候,一個狀態條表示,用戶的動作,下載進度條。等等,今天重點是重構下下來進度狀態跟用戶事件的完善。
          2. 繼前幾天搞定Kxml解釋wap出錯的bug后,昨天晚上有對kxml解釋引擎進行了
          的重構,使之能解釋更多的wml標記,并繪制出來。
          3. 今天修改了日志輸出方式。這樣更易于調試。
          4. 今天下午陪女朋友去逛了下街,廣州今天下雨,回來把一些想好了,但確未能實踐的做了下,感覺還不錯,WapPage重構的差不多了,Kxml解釋引擎也差 不多了?,F在忙于下載那些wml文件進行本地調試,還出差一個下載進度條,本想做一個ajax常用的進度的,不過苦于沒有gif圖片分割,而我又對gif 不熟悉。哈
          5. 功能修正了許多。
          5月18日,
          6. 今天的任務是重點重構UI,要求是,每個UI都能記住自己的位置
          7. 重點重構WapPage這個UI,使之可以管理其他UI部件
          5月16日,
          1. 發現了kxml解釋引擎在解釋wml時候的一個bug,詳細看源代碼
          2. 重構了StringPart UI組件,使之可以自動換行。這個功能已經重構完畢
          3. 重構WapPage部件,這個部件很關鍵,是把所有的Part UI組裝起來,所以說這個部件也是所有Part UI的Manage,設計的好,可以很容易做好統一管理,事件處理,資源釋放跟繪制管理等
          4. 發現了一個很嚴重的bug,為什么我用kxml解釋wml的時候,會對一個tag重復的解釋兩次呢。找到問題的所在了,這個并不是kxml的bug,而是自己的疏忽,把函數放錯了位置?,F在問題解決了












          Wml代碼:
          主頁xml 代碼
          1. xml version="1.0"?>
          2. >
          3. <wml>
          4. <card id="index" title="饒榮慶">
          5. <p align="center"><BIG color="d4df">爬蟲工作室<!--</span-->BIG><!--</span-->p>

          6. <p align="center"><a > 3g <!--</span-->a><!--</span-->p>
          7. <p align="center"><a > [WAP中國]<!--</span-->a><!--</span-->p>
          8. <p align="center"><a > 空中網<!--</span-->a><!--</span-->p>
          9. <p align="center"><a >Wap帝國<!--</span-->a><!--</span-->p>
          10. <p align="center"><a > 巴掌<!--</span-->a><!--</span-->p>


          11. 此瀏覽器是我個人一個比較完整的作品,<br/>
          12. 為此我花了很多心血啊,主要是用來交流之用,<br/>
          13. 需要交流的朋友跟我聯系,<br/>
          14. 我的qq是43686904 <br/>
          15. 還有很多需要完善的地方<br/>

          16. <a href="local://help.wml">》幫助<!--</span-->a>
          17. <!--</span-->card> <!--</span-->wml>

          xml 代碼
          1. xml version="1.0"?>
          2. >
          3. <wml>
          4. <card id="index" title="幫助">
          5. <p align="center"><BIG color="d4df">幫助<!--</span-->BIG><!--</span-->p>



          6. 這個瀏覽器的功能簡單,實用,個人很喜歡他,推薦給大家<br/>
          7. 為此我花了很多心血啊,主要是用來交流之用,<br/>
          8. 需要交流的朋友跟我聯系,<br/>
          9. 我的qq是<u color="DDFF">43686904<!--</span-->u> <br/>
          10. 我的電話是:<a href="wtai://wp/mc;13588888888">13588888888<!--</span-->a><br/>
          11. 還有很多需要完善的地方<br/>
          12. <a href="local://main.wml">》返回上一級<!--</span-->a>
          13. <!--</span-->card> <!--</span-->wml>

          以后的一些文章我將會解釋我是怎么樣進行重構的,重構的過程是很快樂的。哈

          下面還是圖片
          繼續帖些圖出來
          這個是今天完善了一個下載wml跟解釋wml的進度條,在頂部黃色的那個部分
          。



          繼續貼圖
          下面是打開wap中國網站的截圖




          這個是3G門戶圖片


          圖片發來發去就是這些,程序開發的工作也還沒有結束,但把程序開發好了,并運行一段時間沒有內存溢出的時候,再讓大家玩下。哈

          1.  今天重構WMLParser,使之不已mainform耦合。經過20多分鐘的努力終于重構完畢這個方面的功能

          2.  下面可能要設計一個把wml轉換成string,用于保存網頁的功能,比如把string保存到rms中

          3.  網上看了下,順便就整理下手機的各個參數的支持..

          4.  終于搞定了系統屬性的查看,發現程序運行一段時間后,內存不段上升.確實是有內存瓶頸,得努力改進

          明天跟以后的時間打算設計一個文本解釋引擎,就是從文本中解釋然后再繪制成控件,主要是用來保存網頁



          爬蟲工作室 -- 專業的手機軟件開發工作室
          3G視線 -- 專注手機軟件開發
          posted on 2007-05-23 08:58 3G工作室 閱讀(1263) 評論(1)  編輯  收藏 所屬分類: j2me

          Feedback

          # re: 重構Wap Explorer 使之可以成為一個商業產品? 2007-05-24 22:18 CowNew開源團隊
          牛人,佩服。  回復  更多評論
            

          主站蜘蛛池模板: 铁岭市| 桃江县| 石河子市| 藁城市| 湟中县| 赤城县| 屏南县| 永善县| 四川省| 湖南省| 上虞市| 乌拉特前旗| 邛崃市| 颍上县| 隆林| 恩施市| 娱乐| 西平县| 米泉市| 新安县| 仲巴县| 东辽县| 丰都县| 共和县| 彰化县| 青田县| 马关县| 绿春县| 景宁| 玉龙| 同江市| 宝山区| 阳谷县| 无为县| 昆山市| 绍兴市| 阿合奇县| 纳雍县| 合阳县| 宜都市| 静安区|