AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Delphi Android App, eigene Datei speichern und laden auf Smartphone
Thema durchsuchen
Ansicht
Themen-Optionen

Android App, eigene Datei speichern und laden auf Smartphone

Ein Thema von Alex_ITA01 · begonnen am 15. Sep 2015 · letzter Beitrag vom 3. Jan 2018
Antwort Antwort
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

Android App, eigene Datei speichern und laden auf Smartphone

  Alt 15. Sep 2015, 16:58
Hallo zusammen,
ich habe eine Frage.
In meiner Android App kann ich Einstellungen vornehmen und speichern.
Ich kann auch diese Einstellungen aus der Datei wieder laden.

So erstelle ich die Datei:
Delphi-Quellcode:
AppPath := TPath.GetTempPath;
AppPath := TPath.Combine(AppPath, 'MyTestApp');
TDirectory.CreateDirectory(AppPath);

FileName := TPath.Combine(AppPath, 'MyTestApp.txt');
Wenn ich mir im Debugger die Variable "AppPath" angucke, steht da folgendes drinne:

'/storage/sdcard0/Android/data/com.embarcadero.MyTestApp/files/tmp/MyTestApp'

Soweit ok...
Nur finde ich diesen Ordner auf meinem Handy nicht.

Ich kann aber Änderungen an den Einstellungen vornehmen und diese werden auch gespeichert, da ich beim nächsten App Start die neuen Einstellungen sehe.

Wisst ihr, wo sich die Sachen "verstecken" ?

Ich habe ja nichtmal den Ordner "com.embarcadero.MyTestApp" obwohl ich unter den installierten Apps auf dem Handy, meine App sehe.

Grüße
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.094 Beiträge
 
Delphi 12 Athens
 
#2

AW: Android App, eigene Datei speichern und laden auf Smartphone

  Alt 15. Sep 2015, 20:23
Ich speichere alles unter TPath.GetDocumentsPath;.

Die anderen Verzeichnisse haben schonmal verschiedeneste Zugriffs-Probleme auf verschiedenen Plattformen gemacht,
aber das GetDocumentsPath scheint auf allen Platformen verfügbar und ohne Problmeme beschreibbar zu sein.
Das Problem mit seltsam verschobenen Verzeichnissen hatte ich auch, aber weiss nicht mehr genau ob
es GetSharedDocumentsPath o.ä. war.

Jedenfalls packe ich im Moment alles unter TPath.GetDocumentsPath, auch Temp. Dateien, Konfigurationsdateien, etc.
bis ich mal mehr Klarheit darüber habe was im Sinne des Erfinders ist.

Wäre interessant mal eine Liste der Verzeichnisse zu bekommen unter welchen Bedingungen sie funktionieren
und wann nicht.


Rollo
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#3

AW: Android App, eigene Datei speichern und laden auf Smartphone

  Alt 15. Sep 2015, 22:08
Danke für deine Antwort.
Nachdem ich vorhin irgendwie nicht weiter kam, habe ich mein ganzen Rechner sowie mein Handy neugestartet. Vorher hatte ich auch die App auf dem Handy deinstalliert und nochmal als RELEASE übertragen und gestartet.
Nach all den Versuchen, machen und Tun habe ich später nochmal nach dem Verzeichnis geguckt und was soll ich sagen, jetzt finde ich auf dem Internen Speicher des Smartphones das Verzeichnis:

'/Interner Speicher/Android/data/com.embarcadero.MyTestApp/files/tmp/MyTestApp'

Trotzdem steht im Debugger in der Variable AppPath folgendes:

'/storage/sdcard0/Android/data/com.embarcadero.MyTestApp/files/tmp/MyTestApp'

Irgendwie verstehe ich das nicht ganz. Ich dachte das "Interner Speicher" und "sdcard0" etwas verschiedenes wären. Ist dem nicht so?

Das Verzeichnis scheint er irgendwann später (nicht direkt bei meinen ersten Tests) angelegt zu haben.

Grüße
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
DelphiXE

Registriert seit: 1. Nov 2015
5 Beiträge
 
#4

AW: Android App, eigene Datei speichern und laden auf Smartphone

  Alt 2. Jan 2018, 18:33
Hallo,

in Android gibt es verschiedene Zugriffsebenen. Deshalb ist es nicht verwunderlich, wenn du auf den Ordner, den dein Programm erzeugt, nicht von "außen" zugreifen kannst. Das kann nur deine App. Mich wundert es, das du das Verzeichnis dann doch finden kannst. Schau aber mal nach, ob du auch die Datei findest. Wenn ja wäre die Frage ob du dein Handy gerootet hast.

Zu zweitens: sdcard0 und Internerspeicher ist ein und das gleiche. Android ist ein Linuxbasiertes System. Da die meisten Handys Flashspeicher verwenden und keine "Festplatten" werden diese als virtuelle "SD-Karte" erkannt (so habe ich es jedenfalls gelernt). Nun mach der Dateiexplorer auf deinem Handy nichts anderes als die sdcard0 als Internen Speicher zu benennen. Und deshalb ist das bei dir ein "anderer" Dateipfad.

LG
DelphiXE
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Android App, eigene Datei speichern und laden auf Smartphone

  Alt 3. Jan 2018, 20:26
Zitat:
Nun mach der Dateiexplorer auf deinem Handy nichts anderes als die sdcard0 als Internen Speicher zu benennen. Und deshalb ist das bei dir ein "anderer" Dateipfad.
Jupp, bei Android sind einige "Verzeichisse" eigentlich keine Daten-Partitionen, sondern Dateien,
so wie man z.B. im Windows ZIP oder ISO als Laufwerk/Verzeichnis einbinden kann.


Das ist aber nichts Besonderes beim Linux/Android:

Im Windows Explorer gibt es das "Verzeichnis" Desktop oder C:\Benutzer\Frank\Desktop ,
aber eigentlich ist das alles C:\Users\Frank\Desktop , da der Explorer lokalisierte Bezeichner für einige Verzeichnisse anzeigt.
Oder C:\Programme und C:\Program Files.
Diese Bezeichner sind in der desktop.ini der jeweiligen Verzeichnisse definiert.

Und Einige Verzeichnis sind wo ganz anders, da es auch verlinkte Verzeichnisse gibt, so wie man es auch aus der Registry kennt, wo es den Pfad HKEY_CURRENT_USER garnicht gibt und das ein Link auf ein Verzeichnis in HKEY_USERS ist.
Auch sind der Desktop, das Startmenü und HKEY_CLASSES_ROOT virtuelle Verzeichnisse, die aus einer Mischung/Kombination mehrerer Verzeichnisse bestehen. (All-Users + Current-User)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 3. Jan 2018 um 20:32 Uhr)
  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 00: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