android:从后台到前台获取单个Task活动



我正在使用phonegap和mobile jquery开发一个应用程序。

我的应用程序中有一点是在后台运行的,如果js触发了事件,我想让我的应用进入前台。

如何使我的应用程序从后台进入前台。我有一个具有以下属性的单一活动:

android:configChanges="orientation|keyboardHidden|screenLayout"
        android:screenOrientation="portrait"
        android:windowSoftInputMode="adjustPan" 
        android:launchMode="singleTask"        
        android:label="@string/app_name"
        android:theme="@android:style/Theme.NoTitleBar"

我试图让我的应用程序出现在前台的是:

    Intent intent = new Intent(mContext , MainActivity.class);
    intent.setAction(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_LAUNCHER);
    mContext.startActivity(intent);

mContext.startActivity(((Activity)mContext).getIntent());

(MainActivity是我的应用程序中唯一的活动),但它不起作用。我使用的是安卓4.0。

更新:在android 2.3中,它工作正常,但在android 4.0中不工作。

经过努力,我得到了一个解决方案。。。我实现了一个广播监听器。当我收到任何事件时,我会发送一个广播,并在广播接收器中启动应用程序。

Intent intent = new Intent(mContext, NotificationBroadcastReceiver.class);
        mContext.sendBroadcast(intent);

**接收器**:

public final class NotificationBroadcastReceiver  extends BroadcastReceiver {
      @Override
      public void onReceive(Context context, Intent intent) {
         System.out.println("Broadcast recieved");
         context.startActivity(new Intent(context,A.class).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
      }
}

最新更新