Hallo Leute,
bin schon ein bisschen am Verzweifeln, da ich auch nach stundenlanger Recherche noch keine Lösung gefunden habe. Ich möchte einfach eine E-Mails generieren die neben Text auch Bilder beinhaltet. Das Generieren der E-Mail ist gar kein Problem, jedoch finde ich keine Möglichkeit folgenden Aufbau zu erreichen.
Sehr geehrte Damen und Herren,
anbei....
Bild
text zum Bild
nächstes Bild
text zum nächsten Bild.
usw.
mit freundlichen Grüßen.
Die Bilder werden grundsätzlich vor dem Text direkt im Body angezeigt und wenn ich den Text mit nachfolgendem Quellcode einfüge kann ich dies nur einmal tun, da der vorhergehende Text überschrieben wird. Alternativ würde es mir auch sehr helfen, wenn ich die Bilder direkt als Anhang einfüge (was bei einer PDF auch automatisch funktioniert) und nicht als Bild im Body.
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_TEXT, "Sehr geehrte Damen und Herren, \n\n");
intent.putExtra(Intent.EXTRA_TEXT, "anbei..., \n\n"); // vorhergehnde Zeile wird überschrieben und in der E-Mail nicht berücksichtigt.
Nachfolgend der Quellcode zum Generieren meiner E-Mail
String[] to = {"[email protected]"};
Intent intent = new Intent(Intent.ACTION_SEND_MULTIPLE);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(Intent.EXTRA_EMAIL, to);
intent.putExtra(Intent.EXTRA_SUBJECT, "Mein Betreff");
ArrayList<Uri> uris = new ArrayList<Uri>();
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_TEXT, "Sehr geehrte Damen und Herren, \n\n");
for (ImageBucked imgBucked: imgBuckeds) {// meine Bilder
File bitmapFile = bitmapToFile(imgBucked.thumbNail);
uris.add(FileProvider.getUriForFile(MainActivity.mainActivity,
MainActivity.mainActivity.getPackageName() + ".provider", bitmapFile));
}
uris.add(FileProvider.getUriForFile(MainActivity.mainActivity, MainActivity.mainActivity.getPackageName() + ".provider", new File(Prog.getProjectDirExtern() + "/Formular.pdf")));
intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
try {
MainActivity.mainActivity.startActivity(intent);
MailSend mailSend = new MailSend(MainActivity.mainActivity);
mailSend.show();
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(MainActivity.mainActivity, "There are no email
clients installed.", Toast.LENGTH_SHORT).show();
}
}
Alles anzeigen