Ich habe eine Anwendung, die zwei Aktivitäten implementiert. Aktivität A dient zum Auswählen einiger Dateien auf dem Gerät und Aktivität B zeigt zusätzliche Informationen an, während diese Dateien verarbeitet werden. Beide haben singleInstance als Startmodus.Wie wird die Aktivität fortgesetzt, wenn die Anwendung vom Android Launcher neu gestartet wird?
Beim Start der Anwendung wird A ausgeführt. Dann startet diese Aktivität die zweite Aktivität B, die eine Benachrichtigung erstellt. Wenn ich auf diese Benachrichtigung tippe oder eine laufende App von den letzten öffne, funktioniert es einwandfrei und zeigt die laufende Aktivität B. Aber wenn ich die Anwendung zuvor gestartet hätte und Aktivität B bereits ausgeführt wird, führt das erneute Starten aus dem App-Menü dazu, Aktivität A zu zeigen, wenn alte Aktivität B läuft bereits und ist über die Benachrichtigungsleiste erreichbar.
Also, was soll ich machen, damit die Anwendung nur eine einzelne Aktivität gleichzeitig ausführt und die zweite Aktivität anzeigt, wenn sie vom Launcher aufgerufen wird (wenn die zweite Aktivität einmal gestartet wurde und nicht beendet ist)?
Meinst du, dass du Aktivität B öffnest, die App verlässt, zurückkommst und Aktivität A öffnet? Können Sie uns Ihren Quellcode zeigen, hauptsächlich wie Sie die Aktivität B von Aktivität A aufrufen, wie Sie den Benutzer benachrichtigen und wie der PendingIntent behandelt wird? –
Ja, Aktivität A wird geöffnet, wenn ich die App vom Startprogramm aus öffne (z. B. Homescreen-Verknüpfung), wenn ich Aktivität B sehen muss. Um Aktivität B zu starten, mache ich nur eine Absicht, setze die Aktion als ACTION_VIEW, gebe einige Extras und Rufen Sie startActivity() auf. –