Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi Android & iOS ini Speicher bei Update (https://www.delphipraxis.net/204300-android-ios-ini-speicher-bei-update.html)

Stewag 16. Mai 2020 18:40


Android & iOS ini Speicher bei Update
 
Hallo,

ich nutze die Speicherung von Einstellungen einer App über die versteckte lokale ini-Datei:
ini := TInifile.Create(TPath.Combine(TPath.GetDocumentsPa th, 'config.ini')

Das klappt auch gut.

Ich wüsste gerne, ob der Speicher bei einem Update erhalten bleibt oder gelöscht wird?

himitsu 16. Mai 2020 20:07

AW: Android & iOS ini Speicher bei Update
 
Wenn du auf einer SD speicherst, dann bleibt es immer erhalten und auch der Speicher im Spiel bleibt "eigentlich" erhalten.

Android macht beim Update kurz eine Kopie des Verzeichnisses, mit den neuen Dateien und kopiert die Dokumente rüber, bevor am Ende aufgeräumt wird.


Bin nicht mehr dazu gekommen, aber bei Delphi gab es das Problem, dass beim Kompilieren und Ausführen das Programm kurz deinstalliert wurde und damit natürlich die Daten weg sind (abgesehn von den Dateien auf einer SD-Karte)
Ohne SD-Karte hast im Android leider keinen gemeinsamen Speicher, um Dateien ausßerhalb der Installation zu speichern. (bis Android 8 ... neuer hab'sch nicht)



Quasi standardmäßig wird im Android eher eine JSON oder SQLite verwendet, statt einer INI (so wie im Windows die Registry statt der alten INIs),
aber auch da hast das selbe Problem, mit der Datei deiner SQLite-Datenbanken.

Stewag 16. Mai 2020 20:11

AW: Android & iOS ini Speicher bei Update
 
... gilt das nur für Speicherung auf einer SD?

Üblicherweise wird die App doch auf dem Gerät gespeichert und eine von Delhi angelegte die ini-Datei dürfte ebenfalls dort liegen.

Und was macht iOS?

himitsu 16. Mai 2020 20:22

AW: Android & iOS ini Speicher bei Update
 
k.A. ... hab keine iProdukte

Android:
Ja, jedes Programm hat erstmal seine eigenen eigenen Dokument-Verzeichnisse. (praktisch hat jedes Programm seinen eigenen "Benutzer" und der hat seine eigenen Verzeichnisse)
Aber ob und was sich da in den leitzten 2-3 Android-Versionen geändert hat, weiß ich nun auch nicht. (hab da noch nichts anderes gehört)

Auf einer SD-Karte ist das wie ein großer gemeinsamer Speicher, außerhalb der Installation, der auch bei einer Deinstallation des Programms erhalten bleibt.

Wie gesagt, eigentlich bleiben die Dateien erhalten, aber in Delphi hatte man das mal so genial umgebaut, dass beim Übertragen+Starten aus der IDE das über Deinstallieren+Installieren machte (anfgangs ging es mal) und dabei die Dokumente innerhalb der Installation natürlich immer wieder verschwinden.

Rollo62 16. Mai 2020 20:49

AW: Android & iOS ini Speicher bei Update
 
Bei ios werden nur bestimmte Verzeichnisse in der iCloud gesichert, Files die man jederzeit wiederherstellen kann darf Apple jederzeit löschen.
Bin gerade nicht am PC, aber mal bei iOS googeln nach Storage und Verzeichnissen.
Man kann Files gewisse Attribute geben die das Speichern steuern.
Da gibt es auch SaveState o.ä. um KeyValue Daten zu speichern.

zeras 17. Mai 2020 08:06

AW: Android & iOS ini Speicher bei Update
 
Ich habe eine App für Android und nutze folgende Zeilen zum Laden/Speichern von Daten

Delphi-Quellcode:
 fDir := TPath.GetDocumentsPath + TPath.DirectorySeparatorChar;
  fName := fDir + NameSetup;

  Ini := TiniFile.Create(fName);
Dabei bleiben die Daten erhalten, wenn ein Update kommt.

Früher hatte ich mal das Problem, wenn man per USB eine neue Version auf das Tablett spielt, dass dann die Daten verlorengegangen sind.
Mit neueren Delphi Versionen habe ich das Problem aber nicht mehr.
Ich meine, da gibt es in der IDE einen Schalter, finde ihn aber gerade nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:11 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