Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Warum Android-Berechtigungen direkt setzen? (https://www.delphipraxis.net/212874-warum-android-berechtigungen-direkt-setzen.html)

jaenicke 19. Apr 2023 08:47

AW: Warum Android-Berechtigungen direkt setzen?
 
Auch der Speicher gilt als extern, wenn er nicht nur den internen Speicher der App betrifft.

himitsu 19. Apr 2023 10:15

AW: Warum Android-Berechtigungen direkt setzen?
 
Jupp, Extern auch sicht der App, nicht aus sicht das Handy.


Der User und auch die App können im Android auch noch angeben wo dieses "Extern" liegen soll.
-> auf SD (falls vorhanden) oder im internen Speicher

Auch wenn ich es beschissen finde, denn die APP einfach so die User-Wünsche überschreibt.
Ich hatte mal eine APP, die hatte nach jedem Update ihren "Cache" zwanghaft auf die langsame SD-Karte gelegt/verschoben, obwohl ich im Android, in den AppEinstellungen, es auf Intern festgelegt hatte.

Rollo62 19. Apr 2023 16:24

AW: Warum Android-Berechtigungen direkt setzen?
 
Wieso FD, BeforeConnection und External ?
Heisst das, dass deine Sqlite DB extern liegt ?
Ich würde die einfach mit in die App Sandbox mit reinnehmen, das spart eine Menge Problemstellen.

dynamo 19. Apr 2023 17:37

AW: Warum Android-Berechtigungen direkt setzen?
 
Zitat:

Zitat von Rollo62 (Beitrag 1521244)
Wieso FD, BeforeConnection und External ?
Heisst das, dass deine Sqlite DB extern liegt ?

Im internen Speicher, also in /storage/emulated/0/' habe ich ein Verzeichnis angelegt 'sqlite-db'.
In diesem Verzeichnis speicher ich alle Sqlite-DBs meiner ganzen Apps. Genauer gesagt: die App legt das Verzeichnis an, if not exists. Für den Zugriff auf die xyz.db braucht es die Berechtigung "Dateien und Medien". Mittlerweile habe ich die Permission-Proc im Form.onCreate aufgerufen, und zwar, bevor die DB angesprochen wird - ziemlich an 1.Stelle.
Funktioniert hervorragend.

jaenicke 19. Apr 2023 18:56

AW: Warum Android-Berechtigungen direkt setzen?
 
Zitat:

Zitat von dynamo (Beitrag 1521249)
Im internen Speicher, also in /storage/emulated/0/' habe ich ein Verzeichnis angelegt 'sqlite-db'.

Für eine spezielle In-House-App ist so etwas natürlich z.B. in Ordnung, aber normalerweise gehört so etwas eher in TPath.GetDocumentsPath. Dafür brauchst du auch nicht die Rechte für den externen Zugriff.

dynamo 19. Apr 2023 19:21

AW: Warum Android-Berechtigungen direkt setzen?
 
Zitat:

Zitat von jaenicke (Beitrag 1521250)
aber normalerweise gehört so etwas eher in TPath.GetDocumentsPath. Dafür brauchst du auch nicht die Rechte für den externen Zugriff.

Als ich vor einigen Jahren noch mit Delphi XE6 FMX-Android angefangen habe, habe ich mich mit dem TPath-Gedöns mal kräftig vergaloppiert und ich wusste nicht mehr, wo meine Daten abgeblieben sind. Seitdem habe ich es mir angewöhnt, eigene Verzeichnisse zu machen. Aber das mit den Rechten, die ich für TPath.GetDocumentsPath nicht brauche, ist natürlich ein schlagendes Argument. Ich sollte es dann wohl doch verwenden.

himitsu 19. Apr 2023 19:23

AW: Warum Android-Berechtigungen direkt setzen?
 
Noch spaßiger, dass Android inzwischen auch gern mal Rechte automatisch ab und an wieder weg nimmt.

Rollo62 20. Apr 2023 08:30

AW: Warum Android-Berechtigungen direkt setzen?
 
https://developer.android.com/traini...e/app-specific


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 Uhr.
Seite 2 von 2     12   

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