偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

基于NetBeans 5.0 Mobility Pack 5無線應(yīng)用開發(fā)

開發(fā) 后端
本文詳細(xì)為你解讀基于NetBeans 5.0 Mobility Pack 5的無線應(yīng)用開發(fā)

1.NetBeans 5的無線開發(fā)

NetBeans 從1996年捷克幾個(gè)大學(xué)生的作業(yè)Calfi到現(xiàn)在與IBM Eclipse競爭的Java集成開發(fā)平臺,其傳奇的色彩始終為開源的愛好者津津樂道。如今,Eclipse在Java開發(fā)者的群體當(dāng)中占據(jù)了相當(dāng)?shù)姆蓊~,NetBeans則被指責(zé)沒有廣泛的插件開發(fā)支持,無線開發(fā)功能的局限以及界面不方便使用等問題;NetBeans 5.0 的出現(xiàn)使得這一切都有了答案,改進(jìn)的界面,新的GUI編輯器Matisse,方便的插件開發(fā)平臺以及強(qiáng)大的無線開發(fā)模塊掀開了NetBeans針對Eclipse的反擊戰(zhàn)。本文將以無線Java開發(fā)領(lǐng)域當(dāng)中備受關(guān)注的3D開發(fā)為例,介紹基于NetBeans 5.0當(dāng)中的無線開發(fā)模塊Mobility Pack 5的無線應(yīng)用開發(fā)。
首先,我們介紹一下手機(jī)3D開發(fā)領(lǐng)域中非常重要的一些技術(shù),如M3G,建模,標(biāo)準(zhǔn)等,然后,我們通過一個(gè)實(shí)例說明如何利用NetBeans5.0進(jìn)行無線開發(fā)。最后總結(jié)一些NetBeans無線部分的新功能。

2.3D無線應(yīng)用標(biāo)準(zhǔn)M3G

手機(jī)應(yīng)用特別是手機(jī)游戲發(fā)展到今天已經(jīng)開始逐漸從簡單的平面效果向3D等立體效果的應(yīng)用方向發(fā)展,特別是隨著移動設(shè)備的不斷升級更新,Java行業(yè)標(biāo)準(zhǔn)的不斷完善,手機(jī)應(yīng)用向3D方向發(fā)展的時(shí)機(jī)已經(jīng)成熟。其中,M3G就是其中發(fā)展最為迅速的一項(xiàng)技術(shù),M3G(Mobile 3D Graphics API)是在 JSR 184(Java 規(guī)范請求,Java Specification Request)中定義的,J2ME Wireless Toolkit 2.2以及以上版本已經(jīng)附帶了m3g庫,使得我們可以利用手機(jī)等移動設(shè)備在CLDC1.1,MIDP2.0上進(jìn)行三維應(yīng)用以及游戲的設(shè)計(jì)。

3.制作M3G模型

手機(jī)等無線應(yīng)用往往把復(fù)雜的建模過程簡化為一個(gè)m3g格式的二進(jìn)制文件,創(chuàng)建3D模型可以使用3DS Max等商業(yè)軟件或者Blender等開源的建模軟件進(jìn)行。模型完成后再轉(zhuǎn)換成m3g格式的文件,目前已經(jīng)有很多m3g文件的導(dǎo)出工具,包括:M3GToolkit, Juinness 以及HI Corp Mascot v5 M3G Converter等免費(fèi)或商業(yè)軟件,他們可以把各種3D模型文件如3ds, max, obj等轉(zhuǎn)換成為無線應(yīng)用當(dāng)中可以識別的m3g格式的文件。在MIDP當(dāng)中調(diào)用。在本文中,我們使用Blender作為建模軟件,并且使用其導(dǎo)出插件制作m3g文件。

首先我們使用Blender創(chuàng)建一個(gè)3D模型rotate,如圖所示,這里不對建模等具體操作進(jìn)行介紹,具體的制作可以參考www.blender.org的一些文檔,這里要說明的是導(dǎo)出m3g文件的過程。Blender本身不帶有導(dǎo)出m3g的功能,需要使用第三方的導(dǎo)出插件,可以在http://www.nelson-games.de/bl2m3g/default.html下載, 這個(gè)插件需要Python的支持,需要下載并且安裝Python,同時(shí)將Python的庫路徑添加到系統(tǒng)環(huán)境變量PYTHONPATH中,如python安裝在C:PYTHON24,則PYTHONPATH 為“C:PYTHON24;C:PYTHON24DLLS;C:PYTHON24LIB;C:PYTHON24LIBLIB-TK”。安裝完插件后Blender的File-Export菜單中會多出一個(gè)M3G in J2ME的菜單,就可以直接把建好的模型導(dǎo)出成m3g的格式。

4.利用Mobility Pack 5 進(jìn)行開發(fā)

在使用NetBeans之前,我們還需要下載并且安裝J2ME Wireless Toolkit,可以到sun的官方網(wǎng)站去下載,最新的是2.3 beta,這里我們使用的是2.2版本。
準(zhǔn)備工作做好了以后,我們就可以使用NetBeans5.0附帶的Mobility Pack 5的強(qiáng)大平臺來構(gòu)建移動3D應(yīng)用:

1)在NetBeans5當(dāng)中創(chuàng)建一個(gè)新的移動應(yīng)用程序:文件|新建項(xiàng)目,選擇移動|移動應(yīng)用程序,Mobility Pack無縫集成了J2ME WTK的項(xiàng)目支持,在移動應(yīng)用程序當(dāng)中可以選擇直接導(dǎo)入J2MEWTK 或者Sun Java Studio Mobility的項(xiàng)目,當(dāng)前有大量的無線應(yīng)用在J2MEWTK上開發(fā),生成和測試,NetBeans 5.0使得移植這些程序變得異常簡單。

2)選擇Next,項(xiàng)目名稱設(shè)為MyMobileApp,取消創(chuàng)建Hello Midlet,這個(gè)選項(xiàng)會自動生成一個(gè)簡單的Midlet,作為一個(gè)起始點(diǎn),開始開發(fā)者的其它部分代碼。我們先從一個(gè)簡單的例子開始,創(chuàng)建一個(gè)自己的Midlet。選擇完成。

3)右鍵點(diǎn)擊缺省包,選擇創(chuàng)建Midlet,Midlet名稱和包名稱均設(shè)為My3DMidlet, 選擇完成。My3DMidlet.java文件自動出現(xiàn)在編輯區(qū),程序的基本框架已經(jīng)出現(xiàn),在編輯區(qū)的上面有一排小按鈕,可以方便查找,編輯,注釋,宏錄制等操作,其上的Tab瀏覽頁按鈕也支持拖拽,滾動,下拉菜單瀏覽等功能。在編輯區(qū)左側(cè)有行號顯示和展開縮進(jìn)代碼塊的按鈕,非常方便。其淺藍(lán)色漸進(jìn)式設(shè)計(jì)也非常令人賞心悅目,可以說NetBeans的編輯環(huán)境已經(jīng)非常成熟。

4)創(chuàng)建一個(gè)用來顯示3D畫面的Canvas:My3DCanvas,右鍵點(diǎn)擊My3DMidlet包,選擇新建|Java類,類名設(shè)為My3DCanvas,代碼如下:

  1. package My3DMidlet;  
  2.  
  3. import javax.microedition.lcdui.*;  
  4. import javax.microedition.m3g.Graphics3D;  
  5. import javax.microedition.m3g.Loader;  
  6. import javax.microedition.m3g.World;  
  7. /**  
  8.  
  9. *  
  10. * @author ganglin  
  11. */  
  12. public class My3DCanvas extends Canvas{  
  13. Graphics3D g3d;  
  14. World world;  
  15. int currentTime = 0;  
  16.  
  17. /** Creates a new instance of My3DCanvas */  
  18. public My3DCanvas() {  
  19. g3d = Graphics3D.getInstance();  
  20. try{  
  21. Object root[] = Loader.load("rotate.m3g");  
  22. world = (World)root[0];  
  23. }  
  24. catch (Exception ex)  
  25. {  
  26. ex.printStackTrace();  
  27. }  
  28. }   
  29. protected void paint(Graphics g) {  
  30. g3d.bindTarget(g);  
  31. world.animate(currentTime);  
  32. currentTime += 50;  
  33. g3d.render(world);  
  34. g3d.releaseTarget();  
  35. }   
  36. }  
  37.  

以上代碼首先創(chuàng)建了一個(gè)Graphics3D的對象,然后將其綁定到一個(gè)2D的緩存當(dāng)中,渲染W(wǎng)orld場景,節(jié)點(diǎn)Node等對象,最后釋放對象,并且將渲染好的3D試圖送入2D的緩存當(dāng)中。
在編輯代碼的過程中,我們已經(jīng)可以體會到NetBeans在代碼編輯方面的進(jìn)步,比如可以使用修復(fù)導(dǎo)入來自動添加程序所需要的所有的導(dǎo)入庫,并且刪除不必要的庫,可以通過鍵入“.”來選擇函數(shù)或成員列表,按住Ctrl單擊類名或函數(shù)名來查看聲明和實(shí)現(xiàn),自動生成try catch塊等等。

5)在My3DMidlet.java中添加顯示Canvas的語句,

private Canvas canvas;
public void startApp() {
if (canvas==null)
Display.getDisplay(this).setCurrent(canvas=new My3DCanvas());
}

6)把我們前面生成的m3g文件拷貝到與src同一個(gè)目錄的res目錄當(dāng)中,然后在項(xiàng)目屬性窗口中選擇生成|庫和資源|添加文件夾,將m3g資源的路徑加入,這樣編譯器就可以找到我們提供的模型文件。

7)最后,F(xiàn)6執(zhí)行主項(xiàng)目,J2MEWTK的缺省彩色模擬器會自動彈出,如圖所示:

5.NetBeans 5.0 MobilityPack 5 的新特性

以上,我們通過一個(gè)實(shí)例介紹了MobilityPack的概況和一些開發(fā)流程,實(shí)際上,Mobility 5的創(chuàng)新點(diǎn)很多,限于篇幅,不能詳細(xì)介紹,這里,簡單列舉新版本當(dāng)中的一些重要改進(jìn):
◆流程設(shè)計(jì)器:支持Drag-and-Drop方式,可以自由定制執(zhí)行流程,顯示窗口以及執(zhí)行動作;并且自動生成相應(yīng)的代碼;

◆無線連接向?qū)В和ㄟ^Midlet與Web Service和服務(wù)器端代碼進(jìn)行連接,支持JSR-172;

◆用戶定義配置:當(dāng)開發(fā)與配置相關(guān)的應(yīng)用時(shí),可以使用項(xiàng)目模板一次性創(chuàng)建配置,然后在不同的項(xiàng)目當(dāng)中重復(fù)使用;

◆部署向?qū)В和ㄟ^WebDAV,F(xiàn)TP,SCP等方式將Midlet上傳到設(shè)備上進(jìn)行部署;

◆本地化MIDP:允許加入本地化的一些MIDP模塊;

◆集成的混淆器以及優(yōu)化器:MIDP程序非常容易被反編譯進(jìn)而得到源代碼,NetBeans 5 集成了混淆器,使得編譯結(jié)果難以反匯編。

◆ CDC項(xiàng)目向?qū)В禾砑恿藢DC項(xiàng)目的直接支持;

◆可以利用Matisse進(jìn)行CDC開發(fā)時(shí)的界面編輯;

◆支持Sony Ericsson CDC Platform 1 和Nokia S80 平臺;

◆支持更多的第三方模擬器:NetBeans 5.0 可以支持幾乎所有主流手機(jī)廠商的開發(fā)平臺模擬器,包括:Motorola,Nokia,Samsung;Siemens 和BENQ,索尼愛立信;

◆JUnit支持:可以使用JUnit測試CDC 應(yīng)用程序;

6.基于NetBeans 5.0無線開發(fā)總結(jié)

NetBeans 5.0 為無線開發(fā)的愛好者提供了一個(gè)強(qiáng)大的開發(fā)平臺,同時(shí),因?yàn)榕cSun其他系列產(chǎn)品無縫集成,比如JDK,J2ME WTK,Java Studio Mobility等,使得開發(fā)基于J2ME技術(shù)的MIDP以及CDC應(yīng)用非常簡單而且生成代碼質(zhì)量高。我們期待看到更多更優(yōu)秀的特性在NetBeans當(dāng)中出現(xiàn),方便開發(fā)者,方便用戶。

【編輯推薦】

  1. NetBeans 6.0模塊快速入門教程
  2. Netbeans 6.0發(fā)布,支持Ruby、移動開發(fā)和集成的剖析器
  3. NetBeans 6.0預(yù)覽版發(fā)布 Sun再引驚呼
  4. NetBeans成為Ruby開發(fā)者的新伙伴(3)
  5. 八大技術(shù)牛人點(diǎn)評NetBeans 6.5
責(zé)任編輯:張燕妮 來源: csdn
相關(guān)推薦

2009-06-10 16:46:48

netbeans 5.

2010-04-19 17:46:45

無線應(yīng)用開發(fā)系統(tǒng)

2009-05-27 14:31:53

NetBeansEclipsPHP

2011-05-24 10:30:31

PythonNetBeans ID

2009-07-17 12:44:01

NetBeans開發(fā)S

2009-06-10 14:53:25

netbeans st實(shí)例

2011-04-01 16:56:57

NetBeansBlackBerry BlackBerry

2009-06-10 14:23:06

netbeans 6.Jboss

2014-07-29 10:35:21

DockerNodeJS

2009-06-11 10:37:58

netbeans spMVC基礎(chǔ)

2009-06-11 10:43:18

Netbeans插件

2016-05-27 15:44:12

H5LeanCloudWex5

2013-07-02 13:30:18

2009-06-15 13:48:00

NetBeans插件開

2009-06-10 18:01:35

netbeans下載多國語言開發(fā)版

2009-12-14 09:18:43

NetBeans 6.

2009-06-15 15:16:00

netbeans sw平臺開發(fā)

2009-06-15 13:46:00

netbeans配置hibernate

2009-06-10 14:59:04

Netbeans 6.應(yīng)用程序

2010-03-30 11:49:49

無線WiFi技術(shù)醫(yī)療應(yīng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號