Android 从通知还原活动堆栈?
我有一个从堆栈中的活动创建的通知,恢复堆栈非常重要。堆栈中的每个活动应该只有一次 所以我有这个:Android 从通知还原活动堆栈?,android,android-intent,notifications,android-pendingintent,Android,Android Intent,Notifications,Android Pendingintent,我有一个从堆栈中的活动创建的通知,恢复堆栈非常重要。堆栈中的每个活动应该只有一次 所以我有这个: A->B,B开始通知 出于我的目的,我需要在堆栈上恢复A->B。我试着启动一个,但目的似乎没有任何额外的启动startActivity 恢复堆栈需要什么样的标志和XML属性组合? 如果用户在B上并点击通知,则不应启动新堆栈。重新加载一切都很好,但在您的通知意图使用中,它不应该去A->B->B i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); i.a
A->B,B开始通知
出于我的目的,我需要在堆栈上恢复A->B
。我试着启动一个,但目的似乎没有任何额外的启动startActivity
恢复堆栈需要什么样的标志和XML属性组合?
如果用户在
B
上并点击通知,则不应启动新堆栈。重新加载一切都很好,但在您的通知意图使用中,它不应该去A->B->B
i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
因为你不能/不应该改变后退按钮在不同应用之间的后退功能。在B
活动中,使用一个“向上”按钮,使用如下内容导航到堆栈的备份
Intent upIntent = new Intent(this,ParentActivity.class);
upIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(upIntent);
finish();
Intent.FLAG\u ACTIVITY\u REORDER\u TO\u FRONT
会将现有活动放在最前面,否则会创建该活动,使堆栈中没有重复的活动如果用户点击通知时应用程序未运行,会发生什么?