1

I'm calling Application.getApplication().requestForeground(); from a Background Class extending from Application. But this function is not triggering. This function is also in the same Background Class.

        public void activate(){
             System.out.println("==Activate== ");
        }

        public void setupBackgroundApplication(){ 
             Application.getApplication().requestForeground();
        }

How can this activate function can trigger?

4

1 回答 1

1

我认为问题可能在于这里有两个不同的概念:

  • Application,它是所有 BlackBerry Java 应用程序(UI 和后台应用程序)的基类

  • UiApplication,它是 BlackBerry Java UI应用程序的基类。

如果您的应用程序是以下的子类Application

public class MyApplication extends Application {

那么,调用requestForeground()不会神奇地给它一个用户界面。

我的猜测是您需要以下两种解决方案之一:

  1. 如果您想要一个应用程序,请将其更改为extend UiApplication. 然后,您将拥有一个应用程序,从前台到后台再到前台...

  2. 您可以使用两个应用程序,一个始终在后台运行,另一个只是一个 UI 应用程序。然后,您的后台代码可以使用ApplicationManager API触发 UI 应用程序

于 2013-06-12T21:32:13.427 回答