Android に電子メール プロジェクトがあり、メールとその添付ファイルを受信してダウンロードできますが、メッセージに添付ファイルがあるかどうか、および添付ファイルの数を知りたいと考えています。
つまり、次のような if 句を実行するだけです。
if(messages[i].hasAttachment)
{
int numberOfAttachments = messages[i].attachmentNumber;
// do smthng
}
else
{
// do smthng
}
多分その助け: 私はこのコードサンプルで私の体の部分を受け取っています. 一方、私の主題によると、 isMimeType = "Multipart/alternative" または "Multipart/*" の場合、添付ファイルがあることを意味しますか?
public String getText(Part p) throws MessagingException, IOException {
if (p.isMimeType("text/*")) {
boolean textIsHtml = false;
String s = (String) p.getContent();
textIsHtml = p.isMimeType("text/html");
return String.valueOf(s);
}
if (p.isMimeType("multipart/alternative")) {
// prefer html text over plain text
Multipart mp = (Multipart) p.getContent();
String text = null;
for (int i = 0; i < mp.getCount(); i++) {
Part bp = mp.getBodyPart(i);
if (bp.isMimeType("text/plain")) {
if (text == null)
text = getText(bp);
continue;
} else if (bp.isMimeType("text/html")) {
String s = getText(bp);
if (s != null)
return String.valueOf(s);
} else {
return getText(bp);
}
}
return text;
} else if (p.isMimeType("multipart/*")) {
Multipart mp = (Multipart) p.getContent();
for (int i = 0; i < mp.getCount(); i++) {
String s = getText(mp.getBodyPart(i));
// fileName = bp.getFileName();
if (s != null)
return String.valueOf(s);
}
}
return null;
}