如何最小化J2ME应用程序?

时间:2009-07-05 16:34:28

标签: java java-me

我需要我的J2ME应用程序在后台运行,仍然允许用户使用他的手机没有问题。 该应用仍然需要在后台处理一些事件。

如果他愿意,我还想允许用户停止该应用。

我该如何做到这一点?

5 个答案:

答案 0 :(得分:3)

我认为在后台运行midlet但仍然没有在j2me标准中指定处理。在您的midlet移动到背景时,Normaly应该调用暂停的方法。

但并非每个供应商都是这样实现的。 Symbian让您的程序保持运行,就像最小化时没有变化一样。至少在N80和N90上。

答案 1 :(得分:3)

设备在后台运行应用程序的能力取决于其多任务处理能力。因此,与低成本设备相比,更昂贵的PDA型设备更可能支持后台执行。在后台: -

 private Display display = Display.getDisplay(this);
 private Displayable previousDisplayable;

 public void toBack() {
 previousDisplayable = display.getCurrent();
 display.setCurrent(null);
 }

前景: -

public void toFront() {
display.setCurrent(previousDisplayable);
}

但请注意,每台设备都不支持该功能。(适用于诺基亚s60,SonyEricsson,但不适用于诺基亚s40,三星及其他设备)。

答案 2 :(得分:1)

这并不总是支持,但在手机上,命令是:

Display.getDisplay(theMidlet).setCurrent(null);

答案 3 :(得分:0)

如果你的应用是在后台,那么它不会收到任何事件。所以我不知道它如何在后台处理任何事件。如果它是一个预加载J2ME应用程序,那么你可以与手机制造商合作,并获得某些jad属性,将你的midlet放在后台。因此,您不能允许用户退出应用程序。您可能希望通过这个用例来思考。

另一方面,您可以在Blackberry应用程序中完成所有这些操作。

答案 4 :(得分:-2)

MIDlet.notifyPaused()