AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Delphi requestLegacyExternalStorage im AndroidManifest
Thema durchsuchen
Ansicht
Themen-Optionen

requestLegacyExternalStorage im AndroidManifest

Ein Thema von zeras · begonnen am 16. Apr 2021 · letzter Beitrag vom 8. Mai 2021
Antwort Antwort
Seite 2 von 2     12   
Rollo62

Registriert seit: 15. Mär 2007
4.095 Beiträge
 
Delphi 12 Athens
 
#11

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 5. Mai 2021, 21:47
http://docwiki.embarcadero.com/RADSt...or_iOS_or_OS_X
  Mit Zitat antworten Zitat
philipp.hofmann

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

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 5. Mai 2021, 22:04
Da bin ich mir gerade unsicher. Im Englischen heißen die beiden relevanten Listen:
- Entitlement List
- Uses Permissions

In der Entitlement List gibt es ein "Secure File Sharing", keine Ahnung, ob dies noch so erlaubt ist.
In den Uses Permissions gibt es "Read External Storage" und "Write External Storage".

Diese Punkte haben zumindest das Potential jetzt nicht mehr so einfach gültig zu sein.
Ich freue mich schon total darauf, dass alles durchzutesten.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#13

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 08:09
Deine ini gehört in einen App lokalen Pfad, also nicht ein öffentliches Verzeichnis.
Also z.B. TPath.GetHomePath.
  Mit Zitat antworten Zitat
philipp.hofmann

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

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 12:38
GetDocumentsPath und GetHomePath ist unter Android das gleiche Verzeichnis und auch GetPublicPath zeigt nicht auf ein öffentliches, sondern ein Applikationsverzeichnis:

TPath.GetDocumentsPath (nutzt der Verfasser)
/data/data/<application ID>/files

TPath.GetHomePath
/data/data/<application ID>/files

TPath.GetPublicPath (nutze ich)
/storage/emulated/0/Android/data/<application ID>/files

Die Pfade sollten für Ini-Files also alle erlaubt sein.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 13:16
Je nach Geräte-Hersteller können die Pfade auch etwas abweichen,
aber im Großen und Ganzen ist das Schema überall ähnlich.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#16

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 19:56
GetDocumentsPath und GetHomePath ist unter Android das gleiche Verzeichnis und auch GetPublicPath zeigt nicht auf ein öffentliches, sondern ein Applikationsverzeichnis:

TPath.GetDocumentsPath (nutzt der Verfasser)
/data/data/<application ID>/files
/data/user/0/<application ID>/files

TPath.GetHomePath
/data/data/<application ID>/files
/data/user/0/<application ID>/files

TPath.GetPublicPath (nutze ich)
/storage/emulated/0/Android/data/<application ID>/files
/storage/emulated/0/Android/data/<application ID>/files


Die Pfade sollten für Ini-Files also alle erlaubt sein.
Bei mir sehen die Pfade ein wenig anders aus (dunkelrot).

Mal sehen, was eure Ergebnisse bringen, wenn ihr den/das Token in der Überschrift aus dem Manifest entfernt.
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 20:05
Ja, viele Gerätehersteller passen ihr Android etwas an,
auch was das Speicherlayout betrifft.
Und auch je nach Android-Version kann es sich mal verändern.

Vor allem, wenn man im Android auch noch das MultiUser aktiviert,
wonach es bei dir aussieht. (kann aber auch sein, dass es so schon vorbereitet ist, selbst wenn noch nicht aktiv)

Im Android besteht das Dateisystem aus vielen als "Verzeichnis" gemappten Partitionen, oder auch die SD-Card hat ein/zwei Verzeichnisse,
und auch viele Dateien sind als Verzeichnisse eingebunden. (z.B. oft für das Userverzeichnis, je Benutzer)

Wie im Windows, können diese Verzeichnisse sich halt auch verschieben,
drum gibt es ja diese Funktionen zum Auslesen des gewünschten Verzeichnisnamens.
Man kann sie sogar im aktuellen System wo anders hin tun, passiert vielleicht auch mal bei einem Update, oder sogar als Benutzer z.B. auf eine andere Partition/Festplatte/Netzlaufwerk verschieben. (im Android/iOS ist aber vieles gesperrt, drum macht sowas selten jemand selbst)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 6. Mai 2021 um 20:16 Uhr)
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#18

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 20:29
Danke für eure Hinweise.
Eigentlich will ich ja nur meine Einstellungen irgendwo sichern. Ich muss auf keine weiteren Dateien zugreifen.
Den Schlüssel im Manifest habe ich ja gelöscht, aber trotzdem kommt die Meldung im Store, dass das Flag immer noch da wäre.
Mal sehen, ob die Meldung im nächsten Update immer noch kommt.
Das Manifest sollte doch nur einmalig da sein für 32 und 64 bit??
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.095 Beiträge
 
Delphi 12 Athens
 
#19

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 6. Mai 2021, 20:35
In der Entitlement List gibt es ein "Secure File Sharing", keine Ahnung, ob dies noch so erlaubt ist.
In den Uses Permissions gibt es "Read External Storage" und "Write External Storage".
Diese Punkte haben zumindest das Potential jetzt nicht mehr so einfach gültig zu sein.
Bei mir hat "Secure File Sharing" jedenfalls nicht mit requestLegacyExternalStorage zu tun,
egal ob mit/ohne, das Letztere kommt immer mit in das Template.
  Mit Zitat antworten Zitat
philipp.hofmann

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

AW: requestLegacyExternalStorage im AndroidManifest

  Alt 8. Mai 2021, 18:37
Also bei mir hat es geklappt. Ich habe folgendes tun müssen:
- Zeile mit requestLegacyExternalStorage aus dem Manifest rausgenommen
- ReadExternalStorage und WriteExternalStorage aus den Project-Permissions für Android-64 rausgenommen
- Abfrage im Code für ReadExternalStorage und WriteExternalStorage rausgenommen
- meine externen Dateizugriffe auf SAF umgestellt

Die App ist seit heute Nachmittag so im Store aktualisiert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 08:06 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