Nokia真机测试程序自动退出现象搜集[1][javaME]

第一,
下面的代码在索爱机型上可以运行,在nokia s60模拟器上也可以运行,唯独不能在nokia 7610上运行,程序会自动退出:

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


必须改写为

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

方能在真机上运行。

这种程序自动退出的问题,有时候是因为你根本猜想不到的代码导致的,这时候只能通过二分排除法(不断地注释代码来缩小代码范围)来判定了。

第二,再譬如说,
你的代码中有对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();
就会导致Nokia真机立即退出。
同样,
Thread thread;
          (thread = new Thread(new Runnable()
          {
            public void run()
            {
              m_inputHandler.handleStringInput(input);
            }
          }, "inputHandler")).start();
也会导致立即退出。
以上虽然模拟器可以运行,但是真机是不允许的。
posted @   老兵笔记  阅读(787)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示