我正在通过Firebase发送通知,当我收到通知时,我正在使用该通知数据打开一个活动,活动像弹出提醒一样打开,有一个关闭按钮,按下它应该关闭这个当前应用程序并保持在当前历史记录堆栈中的位置,假设我在任何屏幕内并且通知来自后端,并且弹出活动打开,单击关闭按钮时,它应该只关闭它特定活动,而不是当前场景中发生的整个应用程序。我还在清单中将 noHistory 标签添加到 true。从 Firebase 消息服务打开活动记录
public void openGifActivity(String alarmType, String message, String extraMessage, String gifUrl, String leadNumber, String followUpTime, String userName) {
Intent intentGIFActivity = new Intent(this, AlarmGIFActivity.class);
intentGIFActivity.putExtra("alarmType", alarmType);
intentGIFActivity.putExtra("gifMessage", message);
intentGIFActivity.putExtra("extraMessage", extraMessage);
intentGIFActivity.putExtra("gifUrl", gifUrl);
intentGIFActivity.putExtra("followUpTime", followUpTime);
intentGIFActivity.putExtra("leadNumber", leadNumber);
intentGIFActivity.putExtra("userName", userName);
intentGIFActivity.putExtra("message", "0");
startActivity(intentGIFActivity);
}
单击按钮时关闭此活动
close.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mMediaPlayer != null) {
mMediaPlayer.stop();
}
if (vibrator != null) {
vibrator.cancel();
}
AlarmGIFActivity.this.finish();
}
});
在单独的ActivityStack
中创建此Activity
。尝试在创建Intent
时NEW_TASK
标志。
在此警报之后GIFActivity.this.finish((。启动您要在其中导航的所需活动。不要错过为新任务设置标志和清除任务。
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);