Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Benötigt die Camera-Action auf Android die WRITE_EXTERNAL_STORAGE-Permission? (https://www.delphipraxis.net/211430-benoetigt-die-camera-action-auf-android-die-write_external_storage-permission.html)

AuronTLG 15. Sep 2022 10:08

Benötigt die Camera-Action auf Android die WRITE_EXTERNAL_STORAGE-Permission?
 
Moin,

ich habe kürzlich aus einer meiner Apps die External-Storage-Berechtigungen rausgeschmissen und nun festgestellt, dass beim Execute der TakePhotoFromCamera-Action die Fehlermeldung "Erforderliche berechtigungen [CAMERA, WRITE_EXTERNAL_STORAGE] wurden nicht erteilt" kommt.
Die Kamera-Berechtigung sitzt logischerweise, nur die External Storage eben nicht mehr.
Das Photo wird im internen Speicher gespeichert und auch nirgendwo sonst wird irgendwie auf den externen Speicher zugegriffen.

Da ich dazu nichts offizielles finde, hier mal die Frage: Braucht man wirklich generell Schreibrechte auf den externen Speicher, wenn man auf Android mit der Kamera ein Foto machen will? Das macht irgendwie keinen Sinn und ich will diese Berechtigung eigentlich nicht unnötigerweise abfragen...

jaenicke 15. Sep 2022 10:40

AW: Benötigt die Camera-Action auf Android die WRITE_EXTERNAL_STORAGE-Permission?
 
Wenn du einen FileProvider verwendest, der nicht auf den external storage zugreift, sollte das gehen. In Delphi habe ich das noch nie getestet, aber ich vermute, dass es dort genauso läuft.

himitsu 15. Sep 2022 11:04

AW: Benötigt die Camera-Action auf Android die WRITE_EXTERNAL_STORAGE-Permission?
 
Fotos könnten aber auch auf Extern gespeichert werden. (kann man in vielen KameraApps einstellen)

Und eventuell wird hier einfach immer diese Permission eingefordert, weil es so sein könnte, ohne vorher zu prüfen, ob es wirklich aktuell so ist.



Aber eignetlich greift man bei den Camera-/Foto-Actions doch garnicht direkt auf den Speicher zu, sondern "bekommt" das Bild, und bräuchte somit wirklich diese Permission garnicht, selbst wenn das Foto dort liegen würde. :gruebel:

jaenicke 15. Sep 2022 11:18

AW: Benötigt die Camera-Action auf Android die WRITE_EXTERNAL_STORAGE-Permission?
 
Das Bild muss aber irgendwo gespeichert werden. Eine Übergabe als Stream oder so im Speicher ist nicht möglich.

Hier steht dazu mehr:
https://stackoverflow.com/questions/...d-6-0/37166704
Das sollte die einfachste Lösung sein.

AuronTLG 20. Sep 2022 14:10

AW: Benötigt die Camera-Action auf Android die WRITE_EXTERNAL_STORAGE-Permission?
 
Jo, danke, das mit dem FileProvider hat mich zu dem eigentlichen Übeltäter geführt:
Die "provider_paths.xml", welche der App übergeben wird, enthält Verweise auf die externen Pfade.
Ich versuche gerade herauszufinden, wie genau diese Datei erzeugt wird. Ich hoffe ja mal sehr, dass die Verweise auf die externen Pfade nicht einfach kategorisch hineingeschrieben werden, wenn z.B. eine Berechtigung wie Kamera gesetzt wurde...


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:25 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