[英]Android : Getting email message with gmail-api
我收到的是原始格式的消息。 然后得到了Mimemessage
MimeMessage email = new MimeMessage(session, new ByteArrayInputStream(emailBytes));
现在email.getSubject返回正确的值,但email.getReceivedDate为空
请解释这种行为。 这是解码邮件不同部分的正确方法吗
com.google.api.services.gmail.model.Message fullMessage = mService.users().messages().get(acct.sEmail, message.getId()).setFormat("raw").execute();
Properties props = new Properties();
idg.javax.mail.Session session = idg.javax.mail.Session.getDefaultInstance(props, null);
byte[] emailBytes = com.google.api.client.util.Base64.decodeBase64(fullMessage.getRaw());
try {
idg.javax.mail.internet.MimeMessage email = new idg.javax.mail.internet.MimeMessage(session, new ByteArrayInputStream(emailBytes));
Log.i("Received date","is" + email.getReceivedDate() + message.getId());
Log.i("subject", "is" + email.getSubject());
} catch (MessagingException e) {
e.printStackTrace();
}
是的,您可以对MimeMessage
使用getReceivedDate()
,是的,当然,它是检索邮件不同部分的值的更好方法。
这是为了检索MimeMessage
: 用户MimeMessage
这是为了获得邮件的不同属性: MimeMessage属性
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.