Datei in welchen Ordner speichern?

  • 2 Antworten
  • Letztes Antwortdatum
F

Feuerstern

Fortgeschrittenes Mitglied
28
Hallo Leute,
ich möchte eine Datei verschicken. Die Uri zu der Datei übergebe ich über ein Intent an eine App die was damit anfangen kann (z.b. die Gmail App).
Ich bin mir allerdings nicht sicher wo ich die Datei zwischen speichern soll.
Mit der .getFilesDir() Methode bekomm ich einen privaten Ordner weshalb das verschicken nicht funktioniert.
Über Environment.getExternalStoragePublicDirectory() geht es zwar, allerdings lässt sich die Datei in keine der Kategorien einteilen die zur verfügung stehen.
Wo speichere ich die datei am besten zwischen? :confused2:

Mit freundlichen Grüßen
Feuerstern
 
Ein FilePrvider ist die akademisch sauberste Variante!

Ich würde sowas hier vorschlagen:

File tempFile = new File(Environment.getExternalStorageDirectory(), "/Android/data/<package_name>/cache/myfile.png");

(ggf. die Verzeichnisse - falls nicht vorhanden - vorher anlegen...)

- Bei jedem App Start würde ich das cache Verzeichnis löschen.

- Beim Deinstallieren der App wird das Verzeichnis mit gelöscht.

Nicht vergessen: eine leere Datei ".nomedia" in dem Verzeichnis ablegen, damit das nicht indiziert wird.
 

Ähnliche Themen

AnnaBauer21
Antworten
6
Aufrufe
920
AnnaBauer21
AnnaBauer21
AnnaBauer21
Antworten
0
Aufrufe
462
AnnaBauer21
AnnaBauer21
D
Antworten
8
Aufrufe
738
jogimuc
J
S
Antworten
7
Aufrufe
1.121
Silvasurf
S
Zurück
Oben Unten