Zugriff auf eine lokale Datei mit file:// Android
Möchte ich einen link zu einer lokalen Datei in mein Android-Gerät von meiner app. Es kann nur durch das öffnen mit file://vom browser. Ist das möglich in Android, wenn ja, was ist der Weg, den ich zu setzen, nur versuchen, file://nicht alles zeigen in den chrome-browser.
InformationsquelleAutor user1816142 | 2012-11-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wird, hängt von der browser.
Können Sie eine
file://
URL verweist auf einen Welt-lesbaren Datei.Müssen Sie Folgen Sie den
file://
mit dem Pfad der Welt-lesbaren Datei. Da Ihre Web-site hat wahrscheinlich keine Ahnung, was dieser Weg ist, ich habe keine Ahnung, wie Sie erwarten, dass die Einrichtung dieser link.Aber, angenommen, Ihr Gerät hat externe Speichermedien befindet sich am
/mnt/sdcard/
, und Sie haben eine Datei vorhanden namensfoo.txt
, könnten Siefile:///mnt/sdcard/foo.txt
zur Anzeige in Chrome.file:///mnt/sdcard/Download/foo.txt
- aber erlaubt der Zugang zufile:///mnt/sdcard/foo.txt
. In dieser Datei habe ich (vorübergehend) hielt mein Google-Konto-Passwort und nach der Einrichtung des Kontos (und einem reboot) konnte ich nicht reproduzieren dieses mehr o_OInformationsquelleAutor CommonsWare
file:///path/to/foo.txt
würde, geben Sie den url-Pfad zu der Datei. Stellen Sie sicher die Datei ist world-readable.Wenn Sie versuchen, eine access-Datei in der app, stellen Sie sicher, dass Sie die Berechtigung haben
READ_EXTERNAL_STORAGE
. Über API-version 23, müssen Sie explizit anfordern, die der Benutzer für die Speicherung Berechtigung. Diese link Einzelheiten, wie Sie es tun.InformationsquelleAutor Jaydev
Dateien, die ich heruntergeladen habe von Yahoo mail gespeichert wurden, in /storage/emulated/0/Download. Ich bestätigte dies mit termux. Dateien in diesem Verzeichnis genannt werden kann: file:///storage/emulated/0/Download/Datei.ext oder file:///sdcard/Download/Datei.extern, indem Sie den chrome-browser. Keine dieser URLs funktionieren mit dem Firefox-browser (version 61.0). Firefox scheint, als ob es entworfen, um Zugriff auf downloads über Tools | Downloads aber vielleicht nur heruntergeladene Dateien durch den browser. Zurück zu chrome, generell ich kann, gehe zu file:///sdcard und sehen eine Reihe von Dateien und Verzeichnissen.
Als alternative, können Sie rund um die Datei-Berechtigungen Probleme durch das einrichten eines Webservers. Wenn Sie ein Programmierer sind, eine Möglichkeit, dies zu tun ist durch die Installation node.js (und termux) und schreiben Sie einen HTTP-server mit express. Diese richten würden natürlich als http://localhost:8080/file.ext , vorausgesetzt, es ist so konfiguriert, dass auf port 8080.
InformationsquelleAutor Jay Anderson
file:///sdcard/Funktioniert, aber es zeigt nur den internen Speicher
InformationsquelleAutor Ritam baishya