AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FileExists in FireMonkey?

Ein Thema von geosucher · begonnen am 18. Jul 2014 · letzter Beitrag vom 19. Jul 2014
Antwort Antwort
geosucher

Registriert seit: 28. Aug 2006
36 Beiträge
 
#1

FileExists in FireMonkey?

  Alt 18. Jul 2014, 10:50
Hallo,

wieder ein Problem bei der Programmierung für Android. Ich nutze Delphi XE5 Prof..
Ich möchte mit meiner App eine Datei anlegen. Dazu nutze ich:

Androidapi.IOUtils.GetExternalDownloadsDir,

dann hänge ich den Dateinamen an. Ich kontrolliere, ob die Datei existiert mit FileExists (wenn ja hänge ich Ziffern an).
Wiederhole ich die Aktion während eines Progrmmlaufs - alles prima. Beende ich die App und starte neu, erkennt sie die erste Datei nicht und überschreibt.
Sollte ich ein anderes Verzeichnis nehmen oder leigt das an der Debug-Konfiguration?

Im Voraus vielen Dank!

Geosucher
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: FileExists in FireMonkey?

  Alt 18. Jul 2014, 11:10
Das liegt daran, dass in XE5 bei jedem Build die app neu installiert wird. Dadurch landet die auch wieder woanders und erhält eine andere GUID in der Sandbox.

BTW solltest Du für IOUtils verwenden und nicht mehr die alten Dateirotuinen (FileExists >> TFile.Exists). Intern wird das im konkreten Fall zwar weiterhin so aufgerufen, aber viele andere Routinen verhalten sich dann automatisch abhängig von der Plattform korrekt.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all

Geändert von Union (18. Jul 2014 um 11:14 Uhr)
  Mit Zitat antworten Zitat
geosucher

Registriert seit: 28. Aug 2006
36 Beiträge
 
#3

AW: FileExists in FireMonkey?

  Alt 18. Jul 2014, 11:43
Danke!

Meinst Du statt File Exists --> System.IoUtils.TFile.Exists ?

Gruß

Geosucher
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.487 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: FileExists in FireMonkey?

  Alt 18. Jul 2014, 12:13
Ja, genau das. Dort sind auch noch andere Records vorhanden, die einem sehr viel Standard-Arbeit abnehmen (TFile, TPath, TDirectory).
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
662 Beiträge
 
#5

AW: FileExists in FireMonkey?

  Alt 18. Jul 2014, 12:51
Keine Ahnung, ob es in diesem Fall daran liegt, aber unter Android werden neue Dateien über MTP und teilweise auch in (anderen) Apps erst erkannt, wenn entweder das Gerät neu gestartet wird oder "Intent.ACTION_MEDIA_SCANNER_SCAN_FILE" manuell aufgerufen wird.

Siehe auch hier:

https://code.google.com/p/android/is...etail?id=38282

Testen kannst du es ganz einfach, indem du mal das Gerät neu startest und danach prüfst, ob die Datei nun gefunden wird.

Edit: Sehe gerade, du hast "GetExternalDownloadsDir" und nicht "GetSharedDownloadsDir" verwendet; dann wird natürlich sowieso bei jedem Build die Datei gelöscht (wie Union bereits geschrieben hat)

Geändert von Olli73 (18. Jul 2014 um 12:59 Uhr)
  Mit Zitat antworten Zitat
geosucher

Registriert seit: 28. Aug 2006
36 Beiträge
 
#6

AW: FileExists in FireMonkey?

  Alt 19. Jul 2014, 19:26
Hallo Olli73 und Union,

danke für Eure Tipps. Ich schreibe jetzt in GetSharedDownloadsDir und wenn ich ein Release erzeugt, klappt alles wie gewünscht....

Danke!

Geosucher
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: FileExists in FireMonkey?

  Alt 19. Jul 2014, 21:16
Ich dachte ich hätte mal gehört, daß Emba das wieder repariert hätte und nicht mehr über deinstallieren/installieren geht, so wie anfangs schonmal war?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (19. Jul 2014 um 21:39 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#8

AW: FileExists in FireMonkey?

  Alt 19. Jul 2014, 21:26
Ich dachte ich hätte man gehört, daß Emba das wieder repariert hätte und nicht mehr über deinstallieren/installieren geht, so wie anfangs mal?
Aber erst ab XE6 glaube ich.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:36 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