在后台Android中发送带附件的邮件

时间:2015-05-12 07:07:57

标签: android email

我希望在背景中发送邮件,并在背景中从移动内存中附加文件,无意图或用户互动。

请帮帮我。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

下载javamal api jar文件,并按照这样做

recpient= reciept.getText().toString();
      subject= sub.getText().toString();
      textmessage= msg.getText().toString();

    Properties props = new Properties();
     props.put("mail.smtp.host", "smtp.gmail.com");
     props.put("mail.smtp.socketFactory.port", "465");
     props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
     props.put("mail.smtp.auth", "true");
     props.put("mail.smtp.port", "465");

     session = Session.getDefaultInstance(props, new javax.mail.Authenticator() {
                       protected PasswordAuthentication getPasswordAuthentication() {
     return new PasswordAuthentication("Your Gmail-ID", "Your Gmail_password");
     }
     });
     pdialog = ProgressDialog.show(context, "", "Sending Mail...",true);
     RetreiveFeedTask task= new RetreiveFeedTask();
     task.execute();
  }    
   class RetreiveFeedTask extends AsyncTask<string string="" void=""> {     
    protected String doInBackground(String... urls) {
          try {

             Message message = new MimeMessage(session);
             message.setFrom(new InternetAddress("</string><string string="" void="">Your Gmail-ID"));
             message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(recpient));
             message.setSubject(subject);
             message.setContent(textmessage, "text/html; charset=utf-8");

             Transport.send(message);


          } 
          catch (MessagingException e) {
            e.printStackTrace();
             }
          catch (Exception e) {
             e.printStackTrace();

          }
          return null;
      }

      protected void onPostExecute(String feed) {
       pdialog.dismiss();
       reciept.setText("");
       msg.setText("");
       sub.setText("");
       Toast.makeText(getApplicationContext(), "Message sent", Toast.LENGTH_LONG).show();

      }
   }


 }