Es kann viele Aktivitäten in der Anwendung und die zuletzt gestartete Aktivität bleiben oben auf Stapel und beim Zurückdrücken beenden Sie die aktuelle Aktivität. Ich habe eine Sequenz von Aktivität und hier ist der Fluss ..Beenden alle Instanz einer bestimmten Aktivität
wenn wir haben A, B, C (1), D, C (2) ... Activity C (1) und C (2) sind zwei unterschiedliche Instanz Activity C gestartet, während der Anwendung zu navigieren Also, was erforderlich ist, ist alle Instanz der Aktivität C zu löschen und das Ergebnis sollte sein, wenn ich fertig bin C (2) Ich sollte mit diesen Stapel A, B, D verlassen haben. Was soll ich machen .
IMP -Ich will die C (1) am Leben in Stapeln halten, bis es sei denn, ich beende die C (2) wie ich eher C mit New Task-Flag begonnen haben könnte, als diese Instanzen zu schaffen, aber diese Instanz haben unterschiedliche Benutzeroberfläche und Arbeit.
Die folgenden Ansätze sind nicht günstig.
Erste
@Override
public void onBackPressed(){
super.onBackPressed();
Intent intent = new Intent(C(2).this , D.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
startActivity(intent);
}
Diese
Zweite
All die Aktivität von Stapel und Relaunch Aktivität löschen wird die Spur von Aktivität in Singletonklasse halten und dann den erforderlichen Durchfluss Neubelebung Wie auch immer, dies wird die Zeit verbrauchen, wenn viele Aktivitäten gestartet werden müssen. So
Ich dachte, dass es eine Lösung sein, mit Paket-Manager oder andere, die das Problem lösen wird, Lösung
Haben Sie eine finden Weg, dies zu tun? – Uma