我需要我的J2ME应用程序在后台运行,仍然允许用户使用他的手机没有问题。 该应用仍然需要在后台处理一些事件。
如果他愿意,我还想允许用户停止该应用。
我该如何做到这一点?
答案 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()