Ich möchte mehrere Bilder aus dem Anwendungspaketverzeichnis freigeben. Meine Dateien befinden sich im folgenden Pfad wie. /data/data/com.example
. Jetzt kann ich Bilderpfad erhalten. Aber keine Bilder an die Anwendung zum Teilen anhängen. So wie App, Message und Facebook etc. Ich habe eine Permission in Manifest-Datei implementiert. Siehe unten mein Versuch.Android: Wie teile ich Bilder aus dem Paketverzeichnis?
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(saveList.get(0).toString())));
startActivity(Intent.createChooser(intent, "Share"));
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND_MULTIPLE);
intent.putExtra(Intent.EXTRA_SUBJECT, "Here are some files.");
intent.setType("image/*"); /* This example is sharing jpeg images. */
ArrayList<Uri> files = new ArrayList<Uri>();
for(String path : saveList /* List of the files you want to send */) {
File file = new File(path);
Uri uri = Uri.fromFile(file);
files.add(uri);
}
intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, files);
startActivity(intent);
Implementierte Berechtigung ist unten.
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Suchen Sie ein wenig, das wurde zuvor beantwortet. Sie müssen einen 'ContentProvider 'implementieren, um jeder anderen App Zugriff auf Dateien in Ihrem privaten Ordner zu gewähren. – 323go
Werfen Sie einen Blick: http://StackOverflow.com/A/30172585/1944896 – TheLittleNaruto