![](/img/trans.png)
[英]Android app to send Email with attachment using Java Mail API
[英]How can i send an attachment through mail in android app?
嗨,我正在通過android應用發送郵件。 我在應用程序中導入了郵件庫和激活庫。
當我發送郵件時,郵件已成功發送,但附件未發送。 任何人都可以告訴我如何發送。
這是我的代碼:
public synchronized void sendMail(String body, String recipients) throws Exception {
try{
MimeMessage message = new MimeMessage(session);
DataHandler handler = new DataHandler(new ByteArrayDataSource(body.getBytes(), "text/plain"));
message.setSender(new InternetAddress("shankar.uclid@gmail.com"));
message.setSubject("Request For Claim");
MimeBodyPart messageBodyPart2=new MimeBodyPart(); // creating new MimeBodyPart object and setting DataHandler to this object
String filename="file:///android_asset/code.js"; //you can change according to your choice
DataSource source=new FileDataSource(filename);
messageBodyPart2.setDataHandler(new DataHandler(source));
messageBodyPart2.setFileName(filename);
Multipart multipart=new MimeMultipart();
multipart.addBodyPart(messageBodyPart2);
message.setContent(multipart);
message.setDataHandler(handler);
showLog("recepetent is "+recipients);
if (recipients.indexOf(',') < 0)
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("shankar.uclid@gmail.com"));
else
message.setRecipient(Message.RecipientType.TO, new InternetAddress(recipients));
Transport.send(message);
}catch(Exception e){
e.printStackTrace();
}
}
我不為什么我的依戀沒有得到。
謝謝
嘗試這種方式,希望這將幫助您解決問題。
public static void email(Context context, String to, String cc,String subject, String body, List<String> files)
{
//need to "send multiple" to get more than one attachment
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE);
emailIntent.setType("text/plain");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL,
new String[]{to});
emailIntent.putExtra(android.content.Intent.EXTRA_CC,
new String[]{cc});
emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(Intent.EXTRA_TEXT, body);
//has to be an ArrayList
ArrayList<Uri> uris = new ArrayList<Uri>();
//convert from paths to Android friendly Parcelable Uri's
for (String file : files)
{
File fileIn = new File(file);
Uri u = Uri.fromFile(fileIn);
uris.add(u);
}
emailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris);
context.startActivity(Intent.createChooser(emailIntent, "Send mail..."));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.