AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Erkennen wenn Programm "zwangsweise" beendet wird?
Thema durchsuchen
Ansicht
Themen-Optionen

Erkennen wenn Programm "zwangsweise" beendet wird?

Ein Thema von sko1 · begonnen am 18. Aug 2017 · letzter Beitrag vom 18. Aug 2017
Antwort Antwort
Seite 1 von 2  1 2      
sko1

Registriert seit: 27. Jan 2017
577 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 12:50
Hallo,

bei Android ist es ja eigentlich so wie bei Windows : man öffnet eine App, startet dann ein andere (z.B. die Galerie oder das Telefon) und wenn man zur App zurückkehrt ist sie in dem Zustand wie vor dem verlassen.

Nun scheint es aber so dass, wenn der Speicher zu Ende geht, Android dann selbst Apps schließt?
Wenn dem so sein sollte, gibt es einen Weg darauf zu reagieren?

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.149 Beiträge
 
Delphi 12 Athens
 
#2

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:03
Zitat:
Speicher zuende
Welcher? (RAM oder Festplatte)

Android lagert Programme eh aus dem RAM aus, wenn sie inaktiv sind, so ähnlich wie mit der Auslagerungsdatei im Windows.
Also geht der RAM zuende, dann wird der Speicher auf den Datenträger ausgelagert.


Und wenn/falls ein Programm abgeschossen wird (terminiert / hart beendet), dann würde es natürlich auf nichts reagieren können.
Wenn ich dir den Kopf wegballer, dann hast du auch keine Zeit mehr in Ruhe irgendwas abzustellen, damit es nicht runterfällt und dich dann gemütlich hinzulegen, um nicht wie ein nasser Sack umzukippen und hart aufzuschlagen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:15
eine drastisch blutrünstige Umschreibung
Es ist aber auch bei iOS ziemlich genau so:
Zitat:
Apps must be prepared for termination to happen at any time and should not wait to save user data or perform other critical tasks. System-initiated termination is a normal part of an app’s life cycle. The system usually terminates apps so that it can reclaim memory and make room for other apps being launched by the user, but the system may also terminate apps that are misbehaving or not responding to events in a timely manner.

Suspended apps receive no notification when they are terminated; the system kills the process and reclaims the corresponding memory. If an app is currently running in the background and not suspended, the system calls the applicationWillTerminate: of its app delegate prior to termination. The system does not call this method when the device reboots.

In addition to the system terminating your app, the user can terminate your app explicitly using the multitasking UI. User-initiated termination has the same effect as terminating a suspended app. The app’s process is killed and no notification is sent to the app.
aus App Programming guide for iOS

tl;dr: Deine App muss so entwickelt sein, daß sie jederzeit abgeschossen werden kann, ohne daß signifikanter Datenverlust auftritt. Das obliegt komplett Deiner Verantwortung.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.349 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:17
Dafür gibt es entsprechende Events:
http://docwiki.embarcadero.com/Libra...plicationEvent
Nur wenn die Anwendung darauf nicht schnell genug reagiert oder der User einen Task selbst killt, wird sie hart beendet ohne dass du etwas mitbekommst.

Es sollte aber nie ein Problem sein, wenn deine App gekillt wird, denn das ist ein Standardfall. Wenn du eine App wie Kindle killst, wird sie nach dem Start trotzdem wieder an fast der gleichen Stelle weitermachen. Weil der Status nicht erst beim Beenden gespeichert wird.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
577 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:19
Zitat:
Also geht der RAM zuende, dann wird der Speicher auf den Datenträger ausgelagert.
Ich rede von Android (Handy / Tablet), also nix Festplatte

Bei mir funktioniert "leider" alles, nur bei einem Anwender ist es so dass, wenn er auf seinem Handy eine andere App startet und die wieder beendet und zu meiner zurück wechseln will, befindet diese sich im "Anfangsmodus", also alle bereits gemachten Eingaben z.B. sind weg!

Das möchte ich irgendwie abfangen!

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:23
Es gibt sehr wohl eine Unterscheidung zwischen Arbeitsspeicher, also Programmausführungsspeicher, und Speicher...ähm...Speicher.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.149 Beiträge
 
Delphi 12 Athens
 
#7

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:41
"Interner Gerätespeicher"

Halt der Festwertspeicher, egal wie man ihn da mennen mag.
Bei Festplatte schließen ich z.B. auch SSDs mit ein, auch wenn sich da keine Platte mehr dreht.
Ringkernspeicher, Magnettrommel, Datasette, HDD, SSHD, SSD, USB-Stick, MemoryCard, SD-Card, ...
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
bra

Registriert seit: 20. Jan 2015
711 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#8

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:49
Ist die App vielleicht einfach nur abgestürzt? Das ist ja bei Delphi-Apps leider keine Seltenheit...
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
577 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#9

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 13:57
Nein, generell (fast immer) wenn eine andere App gestartet wird, bei hunderten anderen Anwendern gibt es ja da keine Probleme!

Application-Events klingt interessant, nur bringt mich die verlinkte Embarcadreo-Seite irgendwie nicht weiter, hat jemand einen kurzen Schnipsel Code zur Anwendung?

Und wenn ich das Ganze richtig gelesen habe, gibt es das auch nur für Android/iOS, wenn ich das Projekt auch für Windows compilieren möchte brauch ich dann entsprechende Compilerschalter...

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.763 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Erkennen wenn Programm "zwangsweise" beendet wird?

  Alt 18. Aug 2017, 14:12
Mach Dir doch nicht so nen Kopf um diese Events. Speicher einfach zeitnah jede Änderung ab. Beim nächsten App-Start sollte dann auch alles da sein. KISS.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz