как отправить почту с вложенным изображением в blackberry - PullRequest
3 голосов
/ 28 декабря 2011

Я занимаюсь разработкой приложения BlackBerry, которое использует функциональность Почты.Моя проблема в том, что я хочу отправить письмо с вложенным изображением.Как я могу это сделать?

Ответы [ 2 ]

3 голосов
/ 28 декабря 2011

Вы можете преобразовать изображение в байтовый массив, а затем использовать следующий метод для отправки файла в виде вложения.

public synchronized boolean sendMail(final byte []data) 
        {    
        Folder[] folders = store.list(4);
        Folder sentfolder = folders[0];
        // create a new message and store it in the sent folder
        msg = new Message(sentfolder);
        multipart = new Multipart();
        textPart = new TextBodyPart(multipart,"Image");
        Address recipients[] = new Address[1];
        try {

                recipients[0] = new Address(address, "XYZ");
                msg.addRecipients(Message.RecipientType.TO, recipients);
                msg.setSubject("Image"); 
                try {
                        Thread thread = new Thread("Send mail") {
                                public void run() { 
                                        try {


                                                    attach = new SupportedAttachmentPart(
                                                                multipart, "application/octet-stream",
                                                                "title",data);                                                      


                                                multipart.addBodyPart(textPart);
                                                multipart.addBodyPart(attach);
                                                msg.setContent(multipart);
                                                Transport.send(msg); 
                                        }
                                        catch(SendFailedException e)
                                        {

                                        } 
                                        catch (final MessagingException e) { 


                                        } 
                                        catch (final Exception e) { 

                                        }

                                }           
                        };
                        thread.start(); 
                        return true;
                } 
                catch (final Exception e) 
                { 

                }
        }catch (final Exception e) {

        }

        return false;
}
0 голосов
/ 28 декабря 2011

Это может помочь вам проверить это

//create a multipart
Multipart mp = new Multipart();

//data for the content of the file
String fileData = "<html>just a simple test</html>";
String messageData = "Mail Attachment Demo";

//create the file
SupportedAttachmentPart sap = new SupportedAttachmentPart(mp,"text/html","file.html",fileData.getBytes());

TextBodyPart tbp = new TextBodyPart(mp,messageData);

//add the file to the multipart
mp.addBodyPart(tbp);
mp.addBodyPart(sap);

//create a message in the sent items folder
Folder folders[] = Session.getDefaultInstance().getStore().list(Folder.SENT);

Message message = new Message(folders[0]);

//add recipients to the message and send
try {
     Address toAdd = new Address("email@company.com","my email");
     Address toAdds[] = new Address[1];
     toAdds[0] = toAdd;
     message.addRecipients(Message.RecipientType.TO,toAdds);
     message.setContent(mp);

     Transport.send(message);
} catch (Exception e) {
     Dialog.inform(e.toString());
}

это для файла изображения

InputStream inputStream;

        FileConnection  fconn = (FileConnection) Connector.open(fName, Connector.READ_WRITE);
        if(fconn.exists()){
            inputStream=fconn.openInputStream();
            byte[] data = IOUtilities.streamToBytes(inputStream);

            inputStream.close();
            fconn.close();                  
            Multipart multipart = new Multipart();

            SupportedAttachmentPart attach = new SupportedAttachmentPart(multipart, ".txt/.jpeg", "attachment1", data);

            multipart.addBodyPart(attach);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...