我有一个J2ME应用程序,它使用蓝牙并在对等移动设备中搜索文件并下载它。我希望让我的应用程序在后台运行,无论何时我接到电话,或者消息以及稍后几秒后恢复,有没有人就此工作请分享您的经验。有没有办法在后台运行Midlet?
答案 0 :(得分:10)
将j2me应用程序设置为后台使用midlet类中的以下内容:
Display.getDisplay (this).setCurrent (null);
要取回屏幕,请使用以下内容:
Display.getDisplay (this).setCurrent (myCanvas);
myCanvas是你的画布实例化
[R
P.S。在隐藏midlet时,您仍然可以使用线程或计时器在后台执行操作。
p.s.2:这不适用于所有型号。 (适用于诺基亚s60,SonyEricsson,但不适用于诺基亚s40,三星和其他一些产品。
答案 1 :(得分:2)
设备在后台运行应用程序的能力取决于其多任务处理能力。因此,与低成本设备相比,更昂贵的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,三星及其他设备)。