AGB  ·  Datenschutz  ·  Impressum  







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

Textdatei auf Android auslesen

Ein Thema von CK14 · begonnen am 4. Mär 2025 · letzter Beitrag vom 5. Mär 2025
Antwort Antwort
CK14

Registriert seit: 5. Apr 2019
6 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Textdatei auf Android auslesen

  Alt 4. Mär 2025, 16:38
Vielen Dank für die schnellen Antworten!

ich habe die Zeile übernommen (angepasst):

tndatnam := TPath.Combine(TPath.GetSharedDocumentsPath, '/tnliste.txt');
Der Fehler bleibt aber bestehen.
Christian

Geändert von TBx ( 4. Mär 2025 um 16:49 Uhr) Grund: Delphi-Tags eingefügt
  Mit Zitat antworten Zitat
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
321 Beiträge
 
Delphi 12 Athens
 
#2

AW: Textdatei auf Android auslesen

  Alt 4. Mär 2025, 16:50
Vielen Dank für die schnellen Antworten!

ich habe die Zeile übernommen (angepasst):

tndatnam := TPath.Combine(TPath.GetSharedDocumentsPath, '/tnliste.txt');

Der Fehler bleibt aber bestehen.
Bei der Verwendung von TPath.Combine bitte das "/" weglassen. Die Methode TPath.Combine kümmert sich selbst darum, dass zusammenzukitten.

Danach versuch bitte mal ein FileExists auf "tndatnam", einfach um sicherzugehen, dass die Datei auch gefunden wird.

Wenn es mit korrektem Pfad immer noch nicht funktioniert, würde ich vermutlich mal mir die Berechtigungen anschauen:
Ich habe seit Ewigkeiten in meinen Apps nicht mehr den externen Speicher angesprochen, von daher weiß ich leider nicht mehr genau, wie es da mit den Berechtigungen aussieht, aber es gibt zwei Berechtigungen dafür, die man unter Projekt -> Optionen -> Anwedung -> Berechtigungen findet. Genauer gesagt gibt es bei den "gefährlichen" Berechtigungen "Externen Speicher lesen" und "Externen Speicher schreiben".
Es ist möglich, dass in deinem Fall die Berechtigung für das Lesen des externen Speichers notwendig ist, ich bin mir aber wie gesagt nicht mehr sicher.

Sollte die Berechtigung notwendig sein, müsstest du dir mal anschauen, wie man zur Laufzeit abgefragte Berechtigungen setzt. Ich bin mir ebenfalls gerade nicht sicher, ob das Anhaken bei dieser Berechtigung in den Projektoptionen ausreicht, oder ob man mit PermissionsService.RequestPermissions arbeiten muss.
  Mit Zitat antworten Zitat
philipp.hofmann

Registriert seit: 21. Mär 2012
Ort: Hannover
917 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Textdatei auf Android auslesen

  Alt 4. Mär 2025, 18:05
Das Zauberwort heißt SAF.
Ohne größere Schwierigkeiten kann die App nur Dateien aus /Android/media/[App-Name]/ lesen.
Ich lasse die Dateien im Explorer auswählen und kopiere sie dann dorthin.
  Mit Zitat antworten Zitat
fisipjm

Registriert seit: 28. Okt 2013
332 Beiträge
 
Delphi 12 Athens
 
#4

AW: Textdatei auf Android auslesen

  Alt 5. Mär 2025, 07:09
Das Zauberwort heißt SAF.
Ohne größere Schwierigkeiten kann die App nur Dateien aus /Android/media/[App-Name]/ lesen.
Ich lasse die Dateien im Explorer auswählen und kopiere sie dann dorthin.
Moin phillip,
für den sharedDocumentsPath braucht es kein StorageAccessFramework. Der sharedDocumentsPath ist ja genau dafür gedacht. hier kannst du sowohl alle Dateien die andere APPs hier rein legen lesen als auch deine Dateien für andere APPs sichtbar ablegen.
siehe: https://docwiki.embarcadero.com/Libr...dDocumentsPath

Man muss zwar keine Benutzerrechte Abfragen (Zur Laufzeit die Erlaubnis einholen) aber man braucht auf jeden Fall den Zugriff auf den externen Speicher.
Siehe: https://developer.android.com/refere...lang.String%29
Zitat:
There is no security enforced with these files. For example, any application holding Manifest.permission.WRITE_EXTERNAL_STORAGE can write to these files.
Die Manifest permission wird über die Projekteinstellungen --> Berechtigungen --> Externer Speicher gesetzt.

Ansonsten wäre die Prüfung auf Existenz der Datei nicht schlecht
  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 09:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz