私はProcessingでスタンドアロンアプリケーションを作成しており、JavaMailを介してFBページのタイムラインにスケッチのスクリーンショットを公開する必要があります。だから私はこれを書いた:
void sendMail() {
String host="smtp.gmail.com";
Properties props=new Properties();
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.host", host);
props.put("mail.smtp.port", "587");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable","true");
Session session = Session.getDefaultInstance(props, new Auth());
try
{
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("xxxxx@gmail.com", "xxxxx"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("xxxxxxxxxx@m.facebook.com", false));
message.setSubject("ok");
BodyPart mbp = new MimeBodyPart();
DataSource fds = new FileDataSource(file);
mbp.setDataHandler(new DataHandler(fds));
mbp.setFileName("screen.png");
Multipart mp = new MimeMultipart();
mp.addBodyPart(mbp);
message.setContent(mp);
message.setSentDate(new Date());
Transport.send(message);
println("Mail sent!");
}
catch(Exception e)
{
println(e);
}
}
これで、Gmailの電子メールを受信者として書き留めると-方法は完全に機能します(件名と添付の写真のみを受信します)が、FBページの電子メールを使用すると-件名のみがタイムラインに表示され、写真は表示されません。
私は以前にPHPで同じことをしましたが、うまくいきました。多分私は何かを逃したのですか?
前もって感謝します!:)