kingpub

          海內存知己,博客若比鄰

           

          搭建J2ME開發平臺 EclipseME篇(下)

          3 使用Eclipse進行無線開發

          創建工程

          在完成了環境搭建后,我們就可以在Eclipse中用我們所熟悉的方式開發無線應用程序。下面讓我們完成一個經典Hello World程序。這里,我們選擇使用Sun WTK 2.2作為模擬器。

          ?


          在Eclipse工作臺上的新建選項中,選擇J2ME Midlet Suite,首先創建一個MIDP Suit。


          在下一步中,我們可以看到有多種模擬器設備可供選擇,選定“J2ME Wireless Toolkit 2.2 MIDP 2.0 Platform”后,繼續下一步,直至完成。


          此時,在包資源管理器中,Hello World套件項目已經被建立起來,我們注意到,Eclipse為我們自動綁定了J2ME library運行庫,并創建了jad等配置文件。

          ?


          創建MIDlet文件

          完成項目創建后,讓我來創建一個MIDlet類文件,它是整個套件的入口文件。也是Hello World的關鍵類。


          選擇J2ME Midlet之后,我們可以看到系統自動繼承了MIDlet超類,請確保三個默認方法復選框被選中,輸入類名,完成創建。


          打開剛剛創建的Hello World,我們發現Eclipse已經自動幫我們生成了程序主體,繼承方法以及一些注釋。


          如此之多的重復工作已經被Eclipse完成,以至于我們只需要在相應的方法中填寫自己的實現過程就可以了。


          首先在Hello World代碼中導入界面類import javax.microedition.lcdui.*;


          然后,我們僅僅需要用以下代碼覆蓋原先的構造函數:


          public HelloWorld() {


          ?????? super ();


          ?????? // TODO 自動生成構造函數存根


          ?????? Form form = new Form("Hello World");


          ?????? form.append("Welcome to J2ME World!");


          ?????? Display.getDisplay(this).setCurrent(form);


          }


          如此簡單的幾步,第一個J2ME就完成了!

          ?

          ?


          執行MIDlet

          在Hello World項目上單擊右鍵,選擇“運行…”,


          ???

          ?


          在彈出對話框中,在Wireless Toolkit Emulator中新建一個配置,指定剛剛Hello World為入口文件,應用設置,最后運行。

          ?


          可以看到,Eclipse自動啟動了WTK的模擬器,顯示出了Hello World的歡迎界面!

          ?


          打包與混淆

          打包,就是為套件生成jar文件,用來發布項目。右鍵單擊目標項目,可以在J2ME選項中選定Create Package,生成jar包。

          ?


          混淆,就是為了保護版權,增加別人反編譯閱讀源代碼的難度;同時可以減少jar包的體積。在J2ME選項中也能夠找到創建混淆包的選項。但首先,需要指定當前系統中混淆器的安裝位置。


          我們這里采用了開源免費的Proguard3.0.1作為混淆器。在“首選項 / J2ME / packaging / obfuscation”中,通過瀏覽指定Proguard3.0.1的安裝(解壓)路徑。

          ?


          應用保存設置之后,就可以成功的創建混淆包了。

          ?


          注意:


          很多初次使用的朋友會發現即便指定路徑之后,依然不能順利創建混淆,并且往往得到類似下面的警告信息。

          ?


          出現這個錯誤的原因與JDK路徑有關。我們在安裝了JDK之后(以1.4.2為例),系統環境變量中存在兩種JDK,一種是JDK SDK,一種是運行時環境(runtime)。Eclipse在解壓安裝時選擇的是后者,而啟動Proguard3.0.1需要的是前者。


          修復這個問題很簡單,在“首選項 / java / 已安裝的JRE”中把你的JRE從指向運行時更改為指向SDK(即JDK的安裝目錄)

          ?


          此時JRE將擁有完整JDK庫文件,再次運行創建混淆,我們會發現在Hello World子目錄deployed中包括了HelloWorld.jar,HelloWorld_base.jar, HelloWorld_base_obf.jar。他們分別是混淆后,混淆前等不同版本的jar包。

          ?

          posted on 2006-10-22 16:50 xiaofeng 閱讀(321) 評論(0)  編輯  收藏 所屬分類: J2ME

          導航

          統計

          常用鏈接

          留言簿(2)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 潼关县| 凤山市| 洪泽县| 昆明市| 西宁市| 芒康县| 纳雍县| 永安市| 秀山| 怀安县| 灵丘县| 阿克| 天津市| 泰来县| 辛集市| 中卫市| 金乡县| 卫辉市| 潮州市| 于田县| 澎湖县| 台北市| 讷河市| 淳化县| 宜丰县| 和龙市| 乐山市| 乐昌市| 万年县| 永靖县| 丹巴县| 婺源县| 开江县| 南投市| 繁峙县| 灵川县| 二连浩特市| 江达县| 阿拉善左旗| 丰都县| 宝坻区|