讓變化成為計劃的一部分

          歡迎大家探討本Blog涉及的所有軟件課題。我的Google Talk ID:zhengyun(at)gmail.com。

          我最希望軟件帶給用戶的感受是:美好的體驗、舒適感、簡約、干凈...

          posts - 32, comments - 8, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
          第一,
          下面的代碼在索愛機型上可以運行,在nokia s60模擬器上也可以運行,唯獨不能在nokia 7610上運行,程序會自動退出:

          new Thread(this, "Menu thread").start();


          必須改寫為

          Thread thread;
          (thread = new Thread(this)).start();

          方能在真機上運行。

          這種程序自動退出的問題,有時候是因為你根本猜想不到的代碼導(dǎo)致的,這時候只能通過二分排除法(不斷地注釋代碼來縮小代碼范圍)來判定了。

          第二,再譬如說,
          你的代碼中有對double的使用,比如這種代碼:

          double alpha = (double)Math.abs(i - m_canvasWidth / 2) /
                                     (double)m_canvasWidth;


          但是,注意一點,CLDC1.1才開始支持Math,“Math functions in java.lang package is available only since CLDC-1.1”。所以,如果你一旦在CLDC1.0的nokia手機上使用,那么,即使你用了try/catch捕獲異常,程序也會自動退出。

          這時候你也不要驚詫。

          第三,
          Thread thread;
                (thread = new Thread(this)).start();代碼可以運行。
          但是Thread thread;
                (thread = new Thread(this, "Menu thread")).start();
          就會導(dǎo)致Nokia真機立即退出。
          同樣,
          Thread thread;
                    (thread = new Thread(new Runnable()
                    {
                      public void run()
                      {
                        m_inputHandler.handleStringInput(input);
                      }
                    }, "inputHandler")).start();
          也會導(dǎo)致立即退出。
          以上雖然模擬器可以運行,但是真機是不允許的。
          主站蜘蛛池模板: 岗巴县| 钟山县| 湾仔区| 庄浪县| 方正县| 鹿邑县| 株洲县| 安西县| 渭源县| 富平县| 巫山县| 宜昌市| 桃源县| 抚州市| 五大连池市| 封开县| 阳泉市| 晴隆县| 滦南县| 会东县| 沭阳县| 循化| 富民县| 冷水江市| 泾源县| 永康市| 阳春市| 璧山县| 特克斯县| 德惠市| 夏邑县| 宝兴县| 堆龙德庆县| 进贤县| 阜阳市| 太康县| 交口县| 余姚市| 平乡县| 洪雅县| 九江县|