App Engine Создать и отправить аудио файл по электронной почте - PullRequest
0 голосов
/ 23 апреля 2011

Мне нужно создать аудиофайл из массива байтов (опубликованный мобильным приложением), а затем отправить его по электронной почте в виде вложения в движок приложения (Java). У кого-нибудь есть предложения? Спасибо за вашу помощь.

1 Ответ

2 голосов
/ 23 апреля 2011

Вы можете отправить аудиофайл в виде вложения электронной почты для некоторых типов аудио (см. Список поддерживаемых форматов ).Вы можете использовать такой код:

Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);

try {
    Message msg = new MimeMessage(session);
    msg.setFrom(new InternetAddress("admin@example.com", "Example.com Admin"));
    msg.addRecipient(Message.RecipientType.TO, new InternetAddress("user@example.com", "Mr. User"));
    msg.setSubject("My subject");

    String htmlBody;        // ...
    byte[] attachmentData;  // your audio file as an array of bits

    Multipart mp = new MimeMultipart();

    MimeBodyPart htmlPart = new MimeBodyPart();
    htmlPart.setContent(htmlBody, "text/html");
    mp.addBodyPart(htmlPart);

    MimeBodyPart attachment = new MimeBodyPart();
    attachment.setFileName("myfile.mp3"); // we will use mp3 as an example
    DataSource src = new ByteArrayDataSource(attachmentData, "audio/mpeg");
    attachment.setDataHandler(new DataHandler(src));
    mp.addBodyPart(attachment);

    msg.setContent(mp);
    Transport.send(msg);

} catch (AddressException e) {
    // ...
} catch (MessagingException e) {
    // ...
}
...