当我尝试通过getcontent()
方法检索 gmail 内容时,出现以下异常
java.lang.ClassCastException:com.sun.mail.imap.IMAPInpustream 无法转换为 javax.mail.Multipart
所以我将 inputream 转换为字符串,但它会重新处理所有数据,包括不是 text/html 的数据。但我只想要带有附件的文本/html数据(如果有的话)。
我的代码:
if(contentType.contains("multipart/alternative") || contentType.contains("multipart/MIXED")){
Log.i("content type...","inside if stmt "+contentType);
Multipart mp = (Multipart)gmsg.getGmailContent();
try {
for(int k=0;k<mp.getCount();k++){
javax.mail.BodyPart p = mp.getBodyPart(k);
if("text/html".equals(p.getContentType())){
/* gContent.loadDataWithBaseURL("https://mail.google.com",
p.getContent().toString() , "text/plain","UTF-8", null); */
Log.i("msg", p.getContent().toString());
}
}
} catch (MessagingException e) {
// TODO Auto-generated catch block
Log.i("error", e.toString());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我在 libs 文件夹中包含了 mail.jar、activation.jar、additional.jar。
在谷歌搜索了很多,但没有得到任何解决方案。请帮助..提前谢谢..