冰浪

          哥已不再年輕 - 堅定夢想,畢生追求!
          posts - 85, comments - 90, trackbacks - 0, articles - 3
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          J2ME點滴

          Posted on 2009-04-09 09:26 冰浪 閱讀(188) 評論(0)  編輯  收藏 所屬分類: J2ME
          Q: 按理說NOKIA的手機應該比moto及國產手機(MTK)性能要好一點,但是一個大的jar包(比如3MB)的J2ME程序在nokia上跑不起來,但在moto及國產手機上卻能跑起來?
                 A:一個經驗豐富的高手告訴我說,主要是兩者的JVM實現機制的差別。前者是加載所有的內容到內存,后者是按需加載。所以前者可以在有限的JAR包中提高性能,后者呢?各有利弊吧。

                 Q:一個J2ME程序,在WTK下面可以很好的運行,但放在我的3250上面,可以成功安裝,運行時卻沒有一點反應。真是郁悶。
                 A:  這種情況一般是由于內存占用的問題。WTK是在PC上跑的,內存相對來說不吃緊。你的J2ME程序如果在WTK模擬器的范圍內,可以跑起來。但在手機上,卻沒有那么多的內存可用,自然跑不起來。

                 Q:我的一個J2ME程序,在WTK下面可以正常的從Form切換到Canvas,但放到手機上,卻死活切不過來,氣死我啦。
                 A:這時,主要原因也可能是內存占用。

          1、showNotify與hideNotify調用的時機。
          顯示順序:canvas -> Form -> Canvas
          在canvas被繪制前,showNotify()會被調用,在showNotify()執行過程中如果有按鍵,則存在事件隊列中,等showNotify()返回后在執行。
          如果這個canvas設置了全屏,則showNotify()之后會調用sizeChanged()
          showNotify返回后,開始執行paint()。
          這是如果要切換到Form,則會先調用hideNotify(),然后顯示Form。從Form切換到canvas,則又會調用showNotify(),返回后,調用paint()。

          2、在eclipse里面,也可以像JBuilder那樣一次修改一個變量在多個地方的使用,方法是:選擇變量 ,shift+alt+R,修改,確定,搞定

          3、2ME中,如果想讀取文本文件,最好是把這個文本文件用utf-8編碼,然后在讀取的時候,new  String(bytes,"utf-8");

          4、在eclipse中,如果出現不能調試的情況,你可以試試把你之前設置的斷點都清除掉,然后在try一下。

          5、在模擬器上,大小寫不敏感,不區分大小寫。但是在我的NOKIA3250上,是區分大小寫的 。"map.PNG"在wtk模擬器上用map.png可以跑,在手機上是不行的。

          6、MIDP 2.0安全機制 與 MIDlet 數字簽名
              MIDP 2.0 為 GSM/UTMS 設備定義了 4 種保護域: manufacturer( 設備制造商 ) , operator( 移動運營商 ) , trusted third party( 可信任的第三方 ) , and untrusted( 不受信任域 ) ,除了 untrusted 域外,每個保護域都對應一組根證書,用于簽名 MIDlet 的簽名證書的根證書必須包含在這些根證書中,使用不同的簽名證書簽名的 MIDlet 將被自動歸類予根證書所屬的保護域,根證書與保護域的關系是:一個保護域可以有許多個根證書,而一個根證書只能對應于一個保護域。

              具體來講, manufacturer 域屬于設備制造商,其根證書是設備制造商自己的根證書;而 operator 域運營商,一般使用其 SIM 卡中的根證書;而 trusted third party 域則預置了全球知名的數字證書頒發機構 (CA) 的根證書,用于驗證由 CA 頒發的 MIDlet 簽名證書;而 untrusted 域沒有根證書,將用于沒有簽名的 MIDlet 和 MIDP 1.0 。

          7、當byte[][] bytes = new byte[2][3]時,bytes.length = 2, byte[0].length = 3
          8、while(true)循環的一種替代 for(;;){}
          9、javap命令的作用
          javap是j2se中的一個查看類的方法聲明的工具,比如:
          javap -private java.util.Calendar
          可以看到這個類的方法聲明。
          10、Graphics的translate方法的用法
                  g.translate(x,y)
                  把繪制的起始坐標移動到x,y位置,繪制的時候,都是相對于(x,y),如果想恢復到默認的坐標系,則g.translate(-x,-y);


          (轉于http://jacky-zhang.javaeye.com/blog/153654)
          主站蜘蛛池模板: 临洮县| 米林县| 凤台县| 大化| 新龙县| 通州区| 水城县| 晋中市| 右玉县| 西乌珠穆沁旗| 江口县| 远安县| 桂东县| 四会市| 开江县| 中方县| 广河县| 洞头县| 嵩明县| 营口市| 公安县| 高台县| 北票市| 逊克县| 澜沧| 泊头市| 泰州市| 景德镇市| 高州市| 孟州市| 金华市| 武川县| 丰城市| 泰顺县| 青州市| 鄂托克旗| 土默特左旗| 古交市| 湟中县| 监利县| 兰考县|