Speichern Sie die Datei in das öffentliche Verzeichnis mithilfe von Cordova FileTransfer
Brauche ich um die download-Dateien auf meinem mobilen Gerät und machen Sie zugänglich für andere apps (Android und iOS).
Konnte ich eine Datei herunterladen, auf die SD-Karte (cordova.Datei.externalDataDirectory), aber diese existiert nur auf Android und selbst dann kann ich nicht verlassen sich auf jedem Gerät, das eine SD-Karte.
Wenn ich den download auf das Gerät Speicher (cordova.Datei.dataDirectory), die Datei ist privat zu meiner app und daher nicht zugänglich für andere apps. Die Datei kann geöffnet werden, im InAppBrowser, aber ich würde es vorziehen, die Verwendung der jeweiligen Standard-app.
Gibt es einen Weg, um einen Pfad zu einem Verzeichnis öffentlich auf allen Geräten verfügbar ist?
Die Wege zurück durch die vorgeschlagene Lösung in https://stackoverflow.com/a/21375812/3432305 sind sowohl private als auf Android...
EDIT:
Ich denke, ich sollte beschreiben meine, so ist es klarer, was ich erreichen will: ich möchte zu öffnen Dateien von meinem in-app-chat Verwendung der jeweiligen Standard-app (pdf-viewer, Bild-viewer, etc.). Da die Cordova-Datei Opener plugin akzeptiert nur Dateien aus dem lokalen Dateisystem, muss ich diese zuerst speichern. Aber Sie müssen nicht unbedingt zugänglich sein müssen, außerhalb von " meine app danach...
InformationsquelleAutor der Frage kolli | 2015-10-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Auf Android, externen Speicher-Verzeichnisse sind immer vorhanden; wenn das Gerät nicht über eine physische SD-Karte, Android emulieren. sehen getExternalStorageDirectory :
Daher
cordova.file.externalDataDirectory
immer beheben. Jedoch, für den Austausch von Daten zwischen apps, die Sie wahrscheinlich verwenden wollencordova.file.externalRootDirectory
- Externer Speicher (SD-Karte) Stamm. Sehen cordova-plugin-Datei.Diese Weise können Sie Dateien ablegen, in einem Ort, der leichter zugänglich ist, von einer anderen app z.B.
/sdcard/my_shared_data/
Auf iOS, es ist mehr schwierig, um Dateien zu teilen, denn apps sind absichtlich isoliert voneinander durch Sicherheits-Richtlinien, wie die von Apple Inter-App-Kommunikation Handbuch sagt:
Ihnen beste Wette auf iOS ist es, die Daten durch Synchronisation via iCloud. Siehe den Abschnitt Konfigurieren einer Gemeinsamen Ubiquity-Container für Mehrere Apps in den iCloud-Design-Guide, der sagt:
InformationsquelleAutor der Antwort DaveAlden