Beiträge von fxbastler

    Nachtrag für alle später Suchenden: es sind zwei Funktionen.

    Zur Erklärung: diese App soll generell keinerlei gespeicherte Daten / Einstellungen im System hinterlassen, shared preferences sind also keine Option. Erst wenn in einem Einstellungsdialog explizit lokales speichern aktiviert ist werden Daten persistent mittels shared preferences hinterlassen und bei Bedarf auch wieder entfernt. Da das per default nicht der Fall ist kann ich solche Funktionen nicht zur Übergabe von Daten zwischen activities benutzen :(

    Hallo Forum,


    wie kann ich Daten zwischen verschiedenen Aktivitäten austauschen wenn ich in einer aufgerufenen Aktivität mittels der Android Taste Back unten oder der Pfeil zurück Taste links in der Actionbar der aufgerufenen Aktivität diese beende und zur aufrufenden Aktivität wechsle?


    Beispiel: ich habe eine App (Android Studio 3.3.2, Kotlin) mit einer Haupt- und einer zweiten Aktivität die untereinander Daten austauschen sollen. Prinzipiell kein Problem: die Hauptaktivität übergibt beim Start der zweiten Aktivität Parameter nach Bedarf mittels Intent und startet dann die zweite Aktivität mittels startActivityForResult. Dort kommen diese Daten an, alles gut. Wenn ich in der zweiten Aktivität einen Button definiere, über result.putExtra zurückzugebende Daten definiere und die zweite Aktivität dann mit finish() beende dann kommen diese Daten auch in der Hauptaktivität im Callback onActivityResult an. Aber wenn die zweite Aktivität mittels der Android Taste Back unten links oder der Pfeil zurück Taste oben links in der Actionbar der aufgerufenen Aktivität beende dann kann ich nichts übergeben. Ein override der Funktionen onStop, onPause, onDestroy und onRestart der zweiten Aktivität nutzt nichts. Diese werden wohl nicht benutzt weil in onActivityResult nichts ankommt. Wie komme ich weiter und kann Daten übergeben ohne expliziten Aufruf von finish()?


    danke vorab