找回密碼
         注冊會員
        搜索附件  

        熱門下載

        附件中心&附件聚合2.0
        For Discuz! X2.5 © hgcad.com

        MIDlets.jar

         

        在MIDlet套件中封裝多個MIDlet:
        在我們談論如何封裝多個 MIDlet之前,我們先得多寫幾個可用的MIDlet。下面有兩個簡單的 MIDlet。
        第一個顯示一個帶有簡短消息的文本框組件。

          MIDlet1.java源程序:
        import javax.microedition.midlet.*;
        import javax.microedition.lcdui.*;
        public class MIDlet1 extends MIDlet implements CommandListener
        {
         private Display display; // 引用Display對象
         private TextBox tbxMain; // 顯示消息的文本框
         private Command cmdExit; // 退出MIDlet的命令
         // 構造程序
         public MIDlet1()
         {
          display = Display.getDisplay(this);
          cmdExit = new Command("Exit", Command.SCREEN, 1);
          tbxMain = new TextBox("MIDlet 1", "Welcome", 50, 0);
          tbxMain.addCommand(cmdExit);
          tbxMain.setCommandListener(this);
         }
         // 啟動MIDlet時由應用程序管理器調用
         public void startApp()
         {
          display.setCurrent(tbxMain);
         }
         // 一個必要的方法
         public void pauseApp()
         { }
         // 一個必要的方法
         public void destroyApp(boolean unconditional)
         { }
         file://檢查一下是否選擇Exit命令
         public void commandAction(Command c, Displayable s)
         {
          if (c == cmdExit)
          {
           destroyApp(false);
           notifyDestroyed();
          }
         }
        }

          第二個MIDlet使用List組件顯示消息(MIDlet2.java):
        import javax.microedition.midlet.*;
        import javax.microedition.lcdui.*;
        public class MIDlet2 extends MIDlet implements CommandListener
        {
         private Display display; file://引用Display對象
         private List lstMain;
         private Command cmdExit; // 退出 MIDlet的命令
         // 構造程序
         public MIDlet2()
         {
          display = Display.getDisplay(this);
          cmdExit = new Command("Exit", Command.SCREEN, 1);
          lstMain = new List("MIDlet 2", Choice.IMPLICIT);
          lstMain.append("Welcome Back", null);
          lstMain.addCommand(cmdExit);
          lstMain.setCommandListener(this);
         }
         file://啟動MIDlet時由應用程序管理器調用
         public void startApp()
         {
          display.setCurrent(lstMain);
         }
         file://一個必要的方法
         public void pauseApp()
         { }
         file://一個必要的方法
         public void destroyApp(boolean unconditional)
         { }
         file://檢查一下是否選擇Exit命令
         public void commandAction(Command c, Displayable s)
         {
          if (c == cmdExit)
          {
           destroyApp(false);
           notifyDestroyed();
          }
         }
        }


          第一個程序名為 MIDlet1.java,第二個程序名為 MIDlet2.java。在你保存這些文件的目錄里,運
        行下列命令編譯并預驗證這些文件。
        javac -bootclasspath c:mefcs*.java
        preverify -classpath c:mefcs;. -d . MIDlet1 MIDlet2
        jar cvfm MIDlets.jar manifest.txt MIDlet1.class MIDlet2.class spin.png

          創建 JAR文件
        創建一個新文件,取名為 manifest.txt,然后輸入如下內容:
        MIDlet-Name: MIDlet Examples
        MIDlet-Version: 1.0
        MIDlet-Vendor: My Corporation Inc.
        MIDlet-1: MIDlet1, /spin.png, MIDlet1
        MIDlet-2: MIDlet2, /spin.png, MIDlet2
        MicroEdition-Profile: MIDP-1.0
        MicroEdition-Configuration: CLDC-1.0

          運行下列命令創建一個 JAR文件:

          
        jar cvfm MIDlets.jar manifest.txt MIDlet1.class MIDlet2.class spin.png

          這將創建一個名為 MIDlets.jar的 JAR文件,包括 manifest.txt文件和上面兩個類文件。

          注意: JAR中的清單文件名應是 manifest.mf。

          創建 JAD文件

          創建一個新文件,取名 MIDlets.jad:
        MIDlet-Name: MIDlet Examples
        MIDlet-Version: 1.0
        MIDlet-Vendor: My Corporation Inc.
        MIDlet-Description: Two simple examples to show how to compile and run a MIDlet
        MIDlet-Jar-URL:
        MIDlet-Jar-Size: 2604
        MIDlet-1: MIDlet1, /spin.png, MIDlet1
        MIDlet-2: MIDlet2, /spin.png, MIDlet2

          注意這兩個 MIDlet的引用:
        MIDlet-1: MIDlet1, /spin.png, MIDlet1

        MIDlet-2: MIDlet2, /spin.png, MIDlet2

          上面每一行都包括在設備上顯示的 MIDlet名 ( MIDlet1和 MIDlet2 );在每個MIDlet名旁邊,應用
        程序管理器都會顯示一個圖象文件;以及啟動 MIDlet的類文件。

          運行 MIDlet

          你既可以從一個局域網文件系統也可以從一個 Web服務器中運行MIDlet,現在我將分別介紹一下。

          從文件系統運行

          鍵入下列命令來預覽MIDlet:
        midp -transient file://MIDlets.jad

           -transient選項告訴模擬器,你想運行一個指定 url中可找到的描述文件。在本例中,
        file://MIDlets.jad,這當前目錄查找 MIDlets.jad。如果有必要的話,你還可以給出一個 JAD文件的
        完整的路徑。比如說,我的 JAD文件的完整路徑是
        file://J2ME/MIDlets/welcome.jad
          從 Web服務器上運行

          你還可以從一個 Web服務器上運行 MIDlet,在上載 JAR和 JAD文件之后,通過改變 url訪問 JAD文
        件:
        midp -transient

          這將訪問運行在我的電腦上的Web服務器上的 MIDlets.jad文件,如果你把文件上傳到互聯網上的
        Web服務器,只需簡直改變適當域名:
        midp -transient http://www.yourwebserver.com/path/MIDlets.jad

          使用 Java程序包的項目管理

          按照下列步驟創建最后一個MIDlet:

          1. 創建用于新項目的目錄,我使用的名稱為 MIDletPackage,是c:me的子目錄。

          2. 在新建目錄內,創建三個新的子目錄: jclasses、 pclasses、 resources

          有了這些附加的目錄,能夠很容易找到特定的文件。例如,所有的圖象文件和其他資源都放入
        /resources子目錄;所有的由 Java編譯程序創建的類文件都置于 /jclasses子目錄;經過預驗證的類置
        于/pclasses子目錄中。下面是我的系統中的目錄結構:
        c:j2me
        |
        MIDletPackage => Java 源代碼和manifest.txt文件
        |
        jclasses => 從Java編譯器編譯的類
        pclasses =>經過預驗證的類
        resources =>資源文件 (圖像文件等)

           3. 更新文件:復制 Java源文件( MIDLet1.java和 MIDlet2.java)到 MIDletPackage目錄,并在每
        個文件頭部添加 package語句,如下:而且,如果你已經使用一個圖象文件的話,把這個文件復制進
        resources目錄中。
        MIDlet1.java:
        package simpleMIDlets;
        import javax.microedition.midlet.*;
        import javax.microedition.lcdui.*;
        public class MIDlet1 extends MIDlet implements CommandListener
        {

        ...

        }

        MIDlet2.java:

        package simpleMIDlets;
        import javax.microedition.midlet.*;
        import javax.microedition.lcdui.*;
        public class MIDlet2 extends MIDlet implements CommandListener

        {

        ...

        }

          4、參考圖象文件和類文件的新的位置更新 manifest.txt和 JAD文件。
        manifest.txt:
        MIDlet-Name: MIDlet Examples
        MIDlet-Version: 1.0
        MIDlet-Vendor: My Corporation Inc.
        MIDlet-1: MIDlet1, /resources/spin.png, simpleMIDlets.MIDlet1
        MIDlet-2: MIDlet2, /resources/spin.png, simpleMIDlets.MIDlet2
        MicroEdition-Configuration: CLDC-1.0
        MicroEdition-Profile: MIDP-1.0


        MIDlets.jad:
        MIDlet-Name: MIDlet Examples
        MIDlet-Version: 1.0
        MIDlet-Vendor: My Corporation Inc.
        MIDlet-Description: Packaging multiple MIDlets
        MIDlet-Jar-URL:
        MIDlet-Jar-Size: 2884
        MIDlet-1: MIDlet1, /resources/spin.png, simpleMIDlets.MIDlet1
        MIDlet-2: MIDlet2, /resources/spin.png, simpleMIDlets.MIDlet2

          注意MIDlet-1和MIDlet-2的更改,被引用的類文件使用 simpleMIDlets.MIDlet1和
        simpleMIDlets.MIDlet2包名。

          5、編譯:編譯源程序:
        javac -bootclasspath c:mefcs-d jclasses *.java

          -d選項告訴編譯程序,把類文件寫入 jclasses目錄。

          6、預驗證:
        preverify -classpath c:mefcs; -d pclasses jclasses

          -d選項告訴預驗證器把經過預驗證的類保存在 pclasses目錄下。最后的 jclasses告訴預驗證器到
        什么地方尋找那些要預驗證的類。

          7、創建 JAR:運行 jar程序:
        jar cvfm MIDlets.jar manifest.txt -C pclasses . resources 

          創建一個名為 MIDlets.jar的文件,使用文件 manifest.txt作為清單文件的內容 (一個名為
        manifest.mf的文件將被保存在 JAR中)。

          運行MIDlet,有兩種情況:

          (1)從文件系統中運行MIDlet:
        midp -transient file://MIDlets.jad

          (2)從web服務器上運行MIDlet:把JAR文件和JAD文件上傳到web服務器,輸入下面的命令來瀏覽
        MIDlet:
        midp -transient
        本文章來自中國IT實驗室http://embed.chinaitlab.com/

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-3-16 21:26 , Processed in 0.032148 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2024 Discuz! Team.

        返回頂部
        国产区视频在线观看一区| 精品乱码一区二区三区四区| 老司机午夜精品视频| 日韩在线精品视频| 少妇人妻偷人精品无码视频| 精品亚洲综合在线第一区| 国产精品无码免费播放| 美女网站视频免费久久| 国产精品无码av在线播放| 88久久精品无码一区二区毛片| 欧美精品综合视频一区二区| 日韩欧精品无码视频无删节| 久久久九九有精品国产| 欧美日韩国产成人高清视频,欧美日韩在线精品一 | 精品欧美激情在线看| 就去吻亚洲精品国产欧美| 2020国产精品永久在线| 欧美成人精品高清视频在线观看| 亚洲精品高清无码视频| 日韩精品在线观看视频| 亚洲一级Av无码毛片久久精品| 国产精品后入内射日本在线观看 | 亚洲av无码国产精品色在线看不卡 | 亚洲欧美日韩国产精品影院| 国产精品一区二区久久不卡| 国产亚洲精品AA片在线观看不加载| 日本一区二区三区四区| 免费精品99久久国产综合精品 | 久久er99热精品一区二区| 99久久精品这里只有精品 | 91精品国产成人网在线观看| 尤物在线免费视频| 2020国产精品| 久久综合精品国产一区二区三区| 久久精品麻豆日日躁夜夜躁| 国产精品日韩欧美久久综合| 色欲国产麻豆一精品一AV一免费| 国产精品哟女在线观看| 精品国产福利一区二区| 久久狠狠一本精品综合网| 国产亚洲精品自在久久|