Enviar varias imagenes en el cuerpo de un correo mediante java mail android studio

como podrán observar en el titulo de la pregunta es lo siguiente:

Necesito enviar varias imagenes por correo usando la libreria java mail en android studio, pero que estas no se envien como adjuntos sino que se envien dentro del cuerpo del correo.

El metodo que estoy implementando hasta ahora envia 4 imagenes pero me muestra en el cuerpo solo una y las demas las manda como adjuntos.

adjunto la clase Email que utilice para el envio del mismo y la configuracion de sus parametros:

public class Email extends javax.mail.Authenticator {

private String _user; private String _pass;  private String _to; private String _from;  private String _port; private String _sport;  private String _host;  private String _subject; private String _body; private String _fileName;   private String _fileName1; private String _fileName2; private String _fileName3;  private boolean _auth;  private boolean _debuggable;  private Multipart _multipart;  public Email() {     _host = "smtp.gmail.com"; // default smtp server     _port = "465"; // default smtp port     _sport = "465"; // default socketfactory port      _user = ""; // username     _pass = ""; // password     _from = ""; // email sent from     _subject = ""; // email subject     _body = ""; // email body      _debuggable = false; // debug mode on or off - default off     _auth = true; // smtp authentication - default on      _multipart = new MimeMultipart();      MailcapCommandMap mc = (MailcapCommandMap) CommandMap.getDefaultCommandMap();     mc.addMailcap("text/html;; x-java-content-handler=com.sun.mail.handlers.text_html");     mc.addMailcap("text/xml;; x-java-content-handler=com.sun.mail.handlers.text_xml");     mc.addMailcap("text/plain;; x-java-content-handler=com.sun.mail.handlers.text_plain");     mc.addMailcap("multipart/*;; x-java-content-handler=com.sun.mail.handlers.multipart_mixed");     mc.addMailcap("message/rfc822;; x-java-content-handler=com.sun.mail.handlers.message_rfc822");     CommandMap.setDefaultCommandMap(mc); }  public Email(String user, String pass) {     this();      _user = user;     _pass = pass; }  public void setPictureFileName(String fileName) {     _fileName=fileName; }  public void setPictureFileNameLogos1(String fileName1){      _fileName1=fileName1;   }  public void setPictureFileNameLogos2(String fileName2){       _fileName2=fileName2;   }  public void setPictureFileNameLogos3(String fileName3){       _fileName3=fileName3;  }  public boolean send() throws Exception {     Properties props = _setProperties();      if(!_user.equals("") && !_pass.equals("") && _to.length() > 0 && !_from.equals("") && !_subject.equals("") && !_body.equals("")) {          // Assuming you are sending email through relay.jangosmtp.net         //String host = "relay.jangosmtp.net";          /*         Properties props = new Properties();         props.put("mail.smtp.auth", "true");         props.put("mail.smtp.starttls.enable", "true");         props.put("mail.smtp.host", host);         props.put("mail.smtp.port", "25");         */           try         {             Session session = Session.getInstance(props,                     new javax.mail.Authenticator() {                         protected PasswordAuthentication getPasswordAuthentication() {                             return new PasswordAuthentication(_user, _pass);                         }                     });              // Create a default MimeMessage object.             MimeMessage message = new MimeMessage(session);              // Set From: header field of the header.             message.setFrom(new InternetAddress(_from));              // Set To: header field of the header.             //message.setRecipients(MimeMessage.RecipientType.TO, InternetAddress.parse(_to[0]));             message.setRecipients(MimeMessage.RecipientType.TO, _to);               // Set Subject: header field             message.setSubject(_subject);              // This mail has 2 part, the BODY and the embedded image             MimeMultipart multipart = new MimeMultipart("related");              // first part (the html)             BodyPart messageBodyPart = new MimeBodyPart();             String htmlText = "<body><img align = \"center\" src=\"cid:image\">"+_body+"'</body>";             messageBodyPart.setContent(htmlText, "text/html");             // add it             multipart.addBodyPart(messageBodyPart);              messageBodyPart = new MimeBodyPart();              DataSource fds = new FileDataSource(_fileName);              messageBodyPart.setDataHandler(new DataHandler(fds));              messageBodyPart.setHeader("Content-ID", "<image>");              // add image to the multipart              multipart.addBodyPart(messageBodyPart);              //logo de facebook             imgUpload(multipart,_fileName1);            imgUpload(multipart,_fileName2);            imgUpload(multipart,_fileName3);              // put everything together             message.setContent(multipart);             // Send message             Transport.send(message);              System.out.println("Sent message successfully....");             return true;         }         catch (Exception e)         {             System.out.println("Email no enviado linea 155....");             e.printStackTrace();             return false;         }      }     else     {         System.out.println("Email no enviado linea 162....");         return false;      } }  public void addAttachment(String filename) throws Exception {     BodyPart messageBodyPart = new MimeBodyPart();     DataSource source = new FileDataSource(filename);     messageBodyPart.setDataHandler(new DataHandler(source));     messageBodyPart.setFileName(filename);      _multipart.addBodyPart(messageBodyPart); }  @Override public PasswordAuthentication getPasswordAuthentication() {     return new PasswordAuthentication(_user, _pass); }  private Properties _setProperties() {     Properties props = new Properties();      props.put("mail.smtp.host", _host);      if(_debuggable) {         props.put("mail.debug", "true");     }      if(_auth) {         props.put("mail.smtp.auth", "true");     }      props.put("mail.smtp.port", _port);     props.put("mail.smtp.socketFactory.port", _sport);     props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");     props.put("mail.smtp.socketFactory.fallback", "false");       return props; }  // the getters and setters public String getBody() {     return _body; }  //public void setBody(String _body) {   //  this._body = _body; //}  public void setBody(String _body) {     this._body = _body; }  public void setTo(String toArr) {     this._to = toArr; }  public void setFrom(String string) {     this._from = string; }    public void setSubject(String string) {     this._subject = string; } 

//funcion para adjuntar las otras 3 imagenes

public void imgUpload(Multipart multipart,String fileName) throws MessagingException  {     int no = (int)Math.random();     String contentId = Integer.toString(no);     System.out.println(contentId);      BodyPart messageBodyPart = new MimeBodyPart();     String htmlText = "<body><img align=\" center \" src=\"cid:"+contentId+"\"></body>";     messageBodyPart.setContent(htmlText, "text/html");      //add it     multipart.addBodyPart(messageBodyPart);     System.out.println(contentId);      //second part (the image)     messageBodyPart = new MimeBodyPart();     DataSource fds = new FileDataSource(fileName);      messageBodyPart.setDataHandler(new DataHandler(fds));     messageBodyPart.setHeader("Content-ID", "<"+contentId+">");     System.out.println(contentId);      //add image to the multipart     multipart.addBodyPart(messageBodyPart); }