Java 如何使J2ME应用程序在后台运行?

Java 如何使J2ME应用程序在后台运行?,java,java-me,midlet,midp,Java,Java Me,Midlet,Midp,我已经编写了一个J2ME应用程序,它使用蓝牙在对等移动设备中搜索文件并下载。我想让我的应用程序运行在后台,每当我接到电话,或消息,然后几秒钟后恢复,有人在这方面的工作请分享你的经验。有没有办法在后台运行Midlet?要将j2me应用程序设置为后台,请在Midlet类中使用以下命令: Display.getDisplay (this).setCurrent (null); 要恢复屏幕,请使用以下命令: Display.getDisplay (this).s

我已经编写了一个J2ME应用程序,它使用蓝牙在对等移动设备中搜索文件并下载。我想让我的应用程序运行在后台,每当我接到电话,或消息,然后几秒钟后恢复,有人在这方面的工作请分享你的经验。有没有办法在后台运行Midlet?

要将j2me应用程序设置为后台,请在Midlet类中使用以下命令:

          Display.getDisplay (this).setCurrent (null);
要恢复屏幕,请使用以下命令:

          Display.getDisplay (this).setCurrent (myCanvas);
其中myCanvas是您的画布实例化

R

p、 当midlet被隐藏时,您仍然可以使用线程或计时器在后台执行操作


p、 s.2:这并不适用于所有型号。(适用于诺基亚s60、SonyEricsson,但不适用于诺基亚s40、三星和其他产品。

设备在后台运行应用程序的能力取决于其多任务能力。因此,与成本较低的设备相比,价格较高的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);
}
并走在前面:-

public void toFront() {
display.setCurrent(previousDisplayable);
}
但请注意,它并不支持所有设备。(适用于诺基亚s60、SonyEricsson,但不适用于诺基亚s40、三星和其他一些设备)。

已经有了