2017-09-14 5 views
-1

zu verwenden Ich habe die documentation über Fileprovider gelesen, aber ich verstehe nicht, wo ich die Bilder (oder Pfad der Bilder), die ich teilen möchte. Ich verstehe, dass ich mit der XML-Datei "file_path" den neuen Pfad einstelle, wenn meine App die Bilder teilt. Ich verstehe auch, dass ich einen neuen Dateipfad erstellen müssen und eine neue Datei für das Bild mit diesem Code:Wo sollte ich Bilder speichern, um es mit Fileprovider

File imagePath = new File(Context.getFilesDir(), "images"); File newFile = new File(imagePath, "default_image.jpg");

Aber ich verstehe nicht, wo ich Bilder in Android Studio setzen sollte, gibt es eine spezifische Verzeichnis ? Und eine zusätzliche Frage: Kann ich mit FileProvider eine ausklappbare Ressource teilen? Darüber hinaus gegeben Dank

+0

Seltsam. Die Dokumentation zeigt sehr deutlich, wo Sie Ihre Dateien speichern können. Sehen Sie sich die Sätze an, die mit 'Represents files in the ....' beginnen. – greenapps

+0

Sorry, aber ich kann nicht den Teil sehen, wo es geschrieben ist, wo ich meine Dateien auf meinem PC in Android Studio (welcher Ordner, Verzeichnis ecc) gespeichert sollte – Smart

+0

Sie sollten eine Textsuche mit Ihrem Browser tun. Dann wird der Browser finden. Und Sie können sie sehen. – greenapps

Antwort

0

mit Fileprovider i

No. eine ziehbar Ressource teilen können, dass Drawables durch Dichte variieren, ist es unklar, was dies auch bedeuten würde.

wo sollte ich Bilder in Android Studio, gibt es ein bestimmtes Verzeichnis?

FileProvider liefert keine Dateien aus dem APK Ihrer App oder Ihrem Projekt. Es liefert Dateien aus dem Dateisystem des Benutzergeräts (z. B. getFilesDir()).

Sie können eine Datei gerne mit Ihrer App verpacken (z. B. in assets/), und sie dann an einen Ort kopieren, an dem FileProvider geliefert wird.

+0

Ok ich habe verstanden, was Sie sagen wollen, aber ich weiß nicht, warum Android-Studio nicht kompiliert meinen Ordner Assets. Was ich meine ist, dass, wenn ich versuche, in das App-Paket mit meinem gerooteten Telefon zu gehen und es keinen Assets-Ordner gibt und in den Dateiordner gibt es nicht meinen Dateiprovider-Pfad, den ich in das XML deklariert habe, wie die Dokumentation sagt (Vielleicht sollte ich den Pfad in meinem Java-Code erstellen?). Danke für die Antwort. – Smart

+0

@Smart: "Was ich meine ist, dass, wenn ich versuche, in das App-Paket mit meinem gerooteten Telefon zu gehen und es keinen Asset-Ordner gibt und in den Dateiordner gibt es nicht meinen Dateipfad, den ich in das XML deklariert habe wie die Dokumentation sagt "- Assets sind Einträge in der APK-Datei, und' FileProvider' erstellt kein Verzeichnis. Wenn Sie weitere Probleme in diesem Bereich haben, fragen Sie bitte eine separate Stack Overflow-Frage mit einem [mcve]. – CommonsWare

Verwandte Themen