Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10.4 (https://www.delphipraxis.net/205436-android-zugriff-auf-externe-dateien-nicht-shareable-media-files-seit-delphi-10-4-a.html)

philipp.hofmann 9. Sep 2020 15:19

Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10.4
 
Hi,

ich habe in der Vergangenheit schon den Zugriff auf externe Dateien unter Android implementiert und damit unter anderem auf Daten der SD-Karte zugegriffen (/storage/0000-0000/[myDir]). Dies hat auch alles mal funktioniert. Seit Delphi 10.4 habe ich aber nur noch Access auf die Shareable Media Files und nicht mehr auf beliebige externe Dateien.

Ich habe folgende Dinge gesetzt/abgefragt:
- Entitlement List: Secure File Sharing aktiviert
- PermissionsService.RequestPermissions(['android.permission.READ_EXTERNAL_STORAGE', 'android.permission.WRITE_EXTERNAL_STORAGE'], ReadExternalStorageRequestResult);

Mit Delphi 10.3.3 gegen Android 32 auf einem aktuellen Amazon FireHD10-Tablet (müsste Android 9.0 entsprechen) funktioniert es noch.
Mit Delphi 10.3.3 gegen Android 64 auf einem aktuellen Samsung S4-Tablen (Android 10.0) funktioniert es noch.

Mit Delphi 10.4.x gegen Android 64 auf dem Samsung S4-Tablet, reicht dies nicht mehr aus und ich habe keine Zugriff mehr auf die externen Dateien.
Weiß jemand schon, was hier zusätzlich zu tun ist?

Grüße, Philipp

TurboMagic 9. Sep 2020 18:29

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Hallo,

das hat glaube ich mit Berechtigungsänderungen in neueren Android Versionen (Android 10 glaube ich) zu tun.
Es gibt zumindest vorübergangsweise noch eine Kompatibilitätseinstellung, mit derm man das alte Verhalten
erreichen kann. DIe ist im Manifest anzugeben.
Details weiß ich aber gerade auch nicht.

Evtl. hilft das hier:
https://developer.android.com/about/...s-private-dirs

Grüße
TurboMagic

Rollo62 9. Sep 2020 18:40

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Hast Du mal das XML Template neu erzeugen lassen ?
Wenn Du von Rx10.3.3 kommst wird da ein Eintrag neu reingesetzt.
Das war wohl das opt-out was TurboMagic meint.

philipp.hofmann 9. Sep 2020 18:48

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Ja, danke. Dies hilft temporär, wenn man die letzte Property im Template hinzufügt:
<uses-feature android:glEsVersion="0x00020000" android:required="True"/>
<application android:persistent="%persistent%"
android:restoreAnyVersion="%restoreAnyVersion%"
android:label="%label%"
android:debuggable="%debuggable%"
android:largeHeap="%largeHeap%"
android:icon="%icon%"
android:theme="%theme%"
android:hardwareAccelerated="%hardwareAccelerated% "
android:resizeableActivity="false"
android:requestLegacyExternalStorage="true">

Temporär, weil dies mit Android 11 nicht mehr funktioniert, da werde ich mich nochmals mit dem "Scoped Storage"-Konzept auseinandersetzen müssen.
Bei Delphi 10.3.3 war diese Property noch nicht notwendig, erst ab Delphi 10.4.

Rollo62 9. Sep 2020 19:17

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Ja, musst Du denn extern aussrhalb des App specific Folder speichern ?
Ich denke das wird zunehmend schwieriger.

Auch werden die Files wohl nach Deinstallation gelöscht, und sind für immer weg.

Ich versuche mich mit dem MediaStore anzufreunden, der kann wohl auch beliebige Files.
Richtig rund ist das Ganze aber noch nicht, ich habe z.B. Sqlite Files, wo sollte ich die Speichern ?

TurboMagic 9. Sep 2020 19:29

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Ich werde das Problem evtl. auch bekommen. Bisher speichere in nach SharedDownloads.
Wie soll denn z.B. ein Webbrowser in Zukunft Downloads abspeichern? Die will man ja
schließlich von außerhalb nutzen können!

Und ich speichere extra nach dort, da Benutzer solche Dateien frei kopieren können sollen
u.a. auch auf das Gerät! Da hilft mein eingebautes ShareSheet nicht, da man dadurch ja nur
Dateien vom Gerät weg bekommt ;-)

So ein Mist immer alles nur noch mehr zu vernageln!
Gewisse DInge müssen aus Sicherheitsgründen sein, aber sowas?

Wie nutzt man denn dieses "Scoped Storage"-Konzept?

Grüße
TurboMagic

philipp.hofmann 9. Sep 2020 19:34

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Mir ging es heute im ersten Schritt auch genau um SharedDownloads.
Ich habe mir das Thema noch nicht genauer angeschaut, dein Link enthält da aber ein paar Infos.
Android 11 ist ja auch erst seit heute da.

Rollo62 10. Sep 2020 14:26

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Zitat:

Zitat von TurboMagic (Beitrag 1473332)
So ein Mist immer alles nur noch mehr zu vernageln!
Gewisse DInge müssen aus Sicherheitsgründen sein, aber sowas?

Ich bin schon seit geraumer Zeit auf der Suche nach Mobile-Cloud Lösungen,
ich nenne es besser Mobile-Server.

Damit man von dem Phone runterkommt, und wieder seine Daten nutzen kann.

Das verkaufen uns Einige Cloud-Anbieter, aber wenn man scharf nachrechnet ist es immer die reine Abzocke.
Dafür suche ich eben erstmal eine LowCost-Option, z.B. auf virtuellen PHP-servern, und da ist schon Vieles möglich.
Skalieren kann man später ja immmer noch, falls das überhaupt in Frage kommt.

Und ja, bei 1 Mio. Usern ist das NICHT der richtige Weg, aber bei 3-10K Usern,
die jetzt nicht Alle ständig den Server gleichzeitig belegen mag das noch gehen.

Das wäre ein Lösungsansatz um die immer stärkere Restiktion aufzubrechen.

Was auch möglich wäre z.B. die plattform-eigenen Server iCloud, GoogleCloud zu nutzen um Daten zu speichern.
Aber auch das geht immer durch das API Nadelöhr, und nervt genauso.

TurboMagic 10. Sep 2020 15:11

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Was bitte spricht dagegen, den Benutzer seine Daten in "Downloads" ablegen zu lassen und mittels
USB Kabel/Bluetooth/W-Lan und Dateimanager diese zu transferieren?
Doch nur, dass der Plattformanbieter kein Zusatzgeschäft machen kann.
Und den ordner Dokumente gibt's ja auch noc. Wozu soll der gut sein, wenn man nix mer drin
ablegen kann/darf? ;-)

Rollo62 10. Sep 2020 15:16

AW: Android: Zugriff auf externe Dateien (nicht Shareable media files) seit Delphi 10
 
Wenns um Transfer geht dann gäbe es noch Tethering ...

Es kommt halt immer auf die Anwendung an was man gerade braucht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:09 Uhr.
Seite 1 von 3  1 23      

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