1

我有fragmentActivity很多片段。我的活动(首先只显示一个片段)会启动一个带有未决意图的警报,如下所示:

    AlarmManager am = (AlarmManager) context
                .getSystemService(Context.ALARM_SERVICE);

       Intent intent = new Intent(context,MainFragmentActivity.class);
        intent.putExtra(MainFragmentActivity.IS_LOCKSCREEN, true);

        PendingIntent pendingintent = PendingIntent.getActivity(context,ALARM_ID, intent, PendingIntent.FLAG_CANCEL_CURRENT);
        am.cancel(pendingintent);
        date = wakUp.getTime();
        am.set(AlarmManager.RTC_WAKEUP, wakUp.getTimeInMillis(),
                pendingintent);

我在警报响起之前完成了活动。

我的警报响起,我的活动被启动并显示一个特定的片段(背景红色),因为 extraMainFragmentActivity.IS_LOCKSCREEN是 true 。

我完成活动并使用最近的应用程序运行应用程序,额外的始终设置为 true,因此启动了红色片段。我不明白,我的 extra 应该设置为 false。

谢谢 !

4

1 回答 1

0

我不确定为什么你认为额外的应该变成假的,但如果你没有在你的活动中改变它(例如,你自己把假的意图)最近的应用程序启动会一次又一次地提供它。可能,您可能想要:
1)清除您活动中的意图标志(然后从最近启动应该保留更改的意图);

2)FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS有意使用以从最近的应用程序中消除该活动(在此处查看讨论以了解有关该启动标志与例如通知一起使用的更多信息);

于 2012-09-18T10:10:09.127 回答