Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#16

AW: FMX DX10 assets\internal --> Android geht nicht?

  Alt 4. Jan 2016, 16:57
Es gibt da eine Funktionalität, die Dateien beim Start aus einem bestimmten Verzeichnis in ein bestimmtes Verzeichnis kopiert, wenn die Datei im Ziel-Verzeichnis nicht existiert.

Das macht die unit System.StartupCopy . Als Voraussetzung muss (bei iOS) die Datei zwingend in der Bereitstellung als Remote-Pfad Startup/Documents/ bekommen.
Bei jedem anderen Remote-Pfad funktioniert das nicht.

Jetzt kommst du und sagst dass Emba da etwas falsch gemacht hat, denn du möchtest gerne diesen Remote-Pfad verwenden und da soll alles anders sein.

Wenn du nicht nass werden willst, dann geh nicht ans Wasser.
Wenn du keinen Sonnenbrand haben möchtest, dann gehe nicht in die Sonne.
Wenn du die Dateien nicht kopiert haben möchtest, dann lege diese nicht in den Remote-Pfad StartUp/Documents/ ab.
Wenn du die Dateien immer ohne wenn und aber kopiert haben möchtest (wozu eigentlich dann kopieren), dann lege diese nicht in den Remote-Pfad StartUp/Documents/ ab.

Lege diese Dateien in einen anderen Remote-Pfad und schreibe dir eine andere Routine, die diese Dateien dann nach deinem Gutdünken wo auch immer hin kopiert.
Merksatz
Dieser eine Remote-Pfad StartUp/Documents/ hat eine besondere ihm zugedachte Funktion.

Willst du dich morgen bei Emba darüber beschweren, dass man in einem Button keinen Text editieren kann? Äh, dafür ist der auch nicht gemacht => "works as designed". Ich will aber ...
Oder bei Microsoft, weil du deine Word-Dokumente am liebsten mit der Endung *.xlsx speicherst und beim Öffnen geht jetzt plötzlich Excel auf?
Oder beim Obsthändler, weil du mit der Banane deine Bierflasche nicht aufbekommst?

Wenn du den Pfad trotzdem nutzen möchtest und dir die Kopiererei egal ist (die Datei liegt doppelt auf dem Device und verbraucht doppelt so viel Speicherplatz), dann kannst du unter iOS so
Delphi-Quellcode:
TPath.Combine(
  TPath.Combine(
    TPath.GetDirectoryName( ParamStr( 0 ) ),
    'StartUp' ),
  'Documents' );
den Remote-Pfad StartUp/Documents/ erhalten.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat