如何隐藏应用程序并使其在任务切换器中不可见?

时间:2012-04-02 09:30:23

标签: blackberry java-me

我正在制作一个我不希望它关闭的应用程序。所以在mainScreen的onClose()函数中,我正在编写这段代码:

public boolean onClose() {
    UiApplication.getUiApplication().requestBackground();
    UiApp.getInstance().acceptsForeground = false;
    return false;
}

在扩展UiApplication的UiApp类中,我重写了acceptForeground函数来执行以下操作:

protected boolean acceptsForeground() {
    return acceptsForeground;
}

通过从菜单中选择退出来关闭应用程序时,图标将从正在运行的应用程序中删除,而不会实际关闭。但问题是由于返回错误值,我无法再次运行。

那么如何在不在任务切换器中显示图标的情况下隐藏应用程序?

1 个答案:

答案 0 :(得分:4)

1.如果要在“切换应用程序”中隐藏应用程序:

public class MyApp extends UiApplication
{
    public static void main(String[] args)
    {
        MyApp theApp = new MyApp();       
        theApp.enterEventDispatcher();
    }

    public MyApp()
    {        
        pushScreen(new MyScreen());
    }
    public boolean shouldAppearInApplicationSwitcher() 
    {
    return false;//Hides the application in "Switch Task"
    }
}

2.如果你想在后台运行应用程序,请在扩展 MainScreen 的类中写下以下代码:

protected boolean onSavePrompt() 
{
    return false;
}

public boolean onClose() 
{
    UiApplication.getUiApplication().requestBackground();
    return super.onClose();
}