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

          3G 手機開發網

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

          爬蟲工作室

          文章出處 3G視線

          連接 : http://javaeye.5d6d.com/thread-234-1-1.html

          J2ME Polish 全攻略之入門

          在看這篇文章之前,我希望讀者先瀏覽漫游 J2ME Polish--比較詳細的文檔.doc 這篇文章

          內容簡介

          J2ME Polish現在很火,很多手機軟件開發商都在采用這東西進行二次開發。然后很可惜,網絡上關于這方面的中文比較少,所以我根據我學習的經過,整理成文章,希望對初學著以及愛好者有所幫助。

          1.到官方http://www.j2mepolish.org/ 上下載安裝包,現在最新版本是2.0 R4版本,本人建議安裝1.2.4版本,因為2.0R4版本可能存在一些不兼容以及一些bug。本人用2.0R4版本的時候,有些例子并不能通過測試

          運行cmd,然后輸入java –jar D:"J2ME Polish.jar即可出現提示窗口,然后點下一步,就ok了。

          上面的目錄結構很清晰。

          其中最import是系統引入的包,其中包括一個bulid的包,以及其他一些,midp等規范包。

          Samples 是例子文件,我的版本里面只有兩個例子,一個是menu,描述的是,采用J2ME Polish GUI,創建適合各個平臺的統一外觀的包,基于CSS設計的。是UI設計的典范,可以具體研究。 Sysinfo是一個系統信息的測試例子,涵蓋了幾乎所有平臺上對jcp規范支持等測試信息,是我們開發程序中必須要用到的知識。

          Doc是文檔,此文檔暫沒有中文。我們學習起來比較吃力

          ApiJ2ME Polish提供給開發人員使用的公共接口

          Bin一些可執行文件

          其中readme.txt文件,關于項目的一些描述

          LICENSE.txt 版權信息,作為商業開發者,一定要看哦

          對于頂級目錄下的xml文件,基本上都是J2ME Polish的描述文件,很重要的哦。是研究它的最直接的資料,可惜,我也是剛學習,沒有深入去了解它

          其中groups.xml定義了不同的平臺下面的東西,比如s40,s60s80390,等api

          Vendors.xml定義了廠商的規范,特性等,比如鍵值的定義啊。J2ME Polish處理鍵值事件的時候主要是對這些規范進行預編譯,所以適合很多平臺,廠商。

          Devices.xml是對各個平臺支持規范程度的描述,此文件包含了很多個平臺支持描述。

          上面的所有配置都是基于xml了。可以自己擴展,api,配置,以及平臺

          三.運行例子Menu, SysInfo

          2.查看bulid.xml文件,看看它做了些說明手機,讓我們的工作這么輕松愉快

          由于貼xml文件,word并沒有進行格式化,所以我這里重點介紹下。

          <project name="enough-j2mepolish-example" default="j2mepolish">

          這段是說,建立一個project,默認執行的targetj2mepolish。

          <property name="wtk.home" , value="D:"WTK22" />

          WTK的安裝目錄

          <property name="polish.home", value="D:"Program Files"J2ME-Polish" />

          J2ME Polish 的安裝目錄

          <taskdef name="j2mepolish"

          classname="de.enough.polish.ant.PolishTask"

          classpath="${polish.home}/import/enough-j2mepolish-build.jar<img0" border="0">{polish.home}/import/jdom.jar<img0" border="0">{polish.home}/import/proguard.jar<img0" border="0">{polish.home}/yguard-lib.jar:${wtk.home}/wtklib/kenv.zip"/>

          這個很重要,定義說。執行這個targer Task,這里是指執行de.enough.polish.ant.PolishTask這個類。具體可以看源代碼,看看里面做了些說明手腳

          <obfuscator name="ProGuard" useDefaultPackage="true" unless="test" >

          <!--

          You can set additional parameters here, e.g.:

          <parameter name="optimize" value="false" />

          -->

          </obfuscator>

          這個用來打包用的,采用ProGuard混淆器

          其他的自己研究。

          我們現在來看看,運行build.xml后生成了些什么呢。不看不知道,一看嚇一跳,

          build的文件夾下面,我發現了好多文件,全部是對于平臺不同的資源源代碼。原來,J2ME-Polish的原理是,通過ant build的擴展,然后通過自己的一套API,把用戶的代碼轉換成對應各個平臺的源代碼,然后編譯,打包。原理雖然簡單,但是這一套卻是要花很多功夫ide哦。我現在開始有點佩服J2ME Polish的創意了。也難怪,我的主管說J2ME Polish是個好東西,好以后繼續學習J2ME Polish的源代碼,繼續探討。

          上面的例子是基于J2ME – Polish GUI的,現在的例子是不import任何的J2ME Polish MIDP相關的API,這樣例子對應需要開發。這個例子更簡單,按照我剛才所寫的方法辦即可。

          順便介紹下這個例子,這個例子對應開發手機軟件來說,也是很有用的。里面包含了對JSR規范支持的測試,已經屏幕,按鍵等相關的測試,很有用。



          爬蟲工作室 -- 專業的手機軟件開發工作室
          3G視線 -- 專注手機軟件開發
          posted on 2007-08-31 13:18 3G工作室 閱讀(1725) 評論(2)  編輯  收藏 所屬分類: j2me 、j2me 入門

          Feedback

          # re: J2ME Polish 全攻略之入門 2007-08-31 21:08 java面試題
          最愛沙發  回復  更多評論
            

          # re: J2ME Polish 全攻略之入門 2010-12-30 14:49 a30164
          <taskdef name="j2mepolish"

          classname="de.enough.polish.ant.PolishTask"

          ....

          name的參數是不可以更改的 為什么呢  回復  更多評論
            

          主站蜘蛛池模板: 罗田县| 新宾| 大名县| 安陆市| 松江区| 霍城县| 德庆县| 泾阳县| 大化| 青海省| 呼玛县| 惠安县| 新干县| 黑山县| 彭阳县| 得荣县| 宝应县| 古浪县| 内黄县| 凉城县| 灌阳县| 沧源| 宁阳县| 游戏| 多伦县| 河池市| 凤庆县| 延寿县| 云和县| 三门峡市| 马公市| 绥棱县| 交口县| 湖口县| 海安县| 兰溪市| 呼伦贝尔市| 密云县| 新竹县| 东乌| 宁陵县|