Android 安卓午餐意向

Android 安卓午餐意向,android,android-intent,android-notifications,Android,Android Intent,Android Notifications,我想通过通知打开我的应用程序,这就是我的目的 Intent viewIntent = new Intent(this, MainActivity.class); viewIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP); viewIntent.putExtra(MainActivity.EXTRA_1, "someExtra"); viewIntent.

我想通过通知打开我的应用程序,这就是我的目的

    Intent viewIntent = new Intent(this, MainActivity.class);
    viewIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
    viewIntent.putExtra(MainActivity.EXTRA_1, "someExtra");
    viewIntent.putExtra(MainActivity.EXTRA_2, "someExtra");
    viewIntent.setAction("action name");

    PendingIntent viewPendingIntent = PendingIntent.getActivity(this, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT);

    return viewPendingIntent;
如果从现在起,这个意图就是午餐的意图,如果我试图打开最近的应用程序的应用程序,他将触发相同的通知意图


我不希望通知的意图是午餐的意图

我正在使用此代码在点击通知时打开MainActivity

    Intent viewIntent = new Intent(this, MainActivity.class);
    viewIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
    viewIntent.putExtra(MainActivity.EXTRA_1, "someExtra");
    viewIntent.putExtra(MainActivity.EXTRA_2, "someExtra");
    viewIntent.setAction("action name");

    PendingIntent viewPendingIntent = PendingIntent.getActivity(this, 0, viewIntent, PendingIntent.FLAG_UPDATE_CURRENT);

    return viewPendingIntent;
 NotificationManager notificationManager = (NotificationManager) context
            .getSystemService(Context.NOTIFICATION_SERVICE);
    Notification notification = new Notification(icon, message, when);

    Intent notificationIntent = new Intent(context, MainActivity.class);

    notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
            | Intent.FLAG_ACTIVITY_SINGLE_TOP);

    PendingIntent intent = PendingIntent.getActivity(context, 0,
            notificationIntent, 0);

    notification.setLatestEventInfo(context, title, message, intent);
    notification.flags |= Notification.FLAG_AUTO_CANCEL;
    notificationManager.notify(0, notification);