0
라이브 메일에서 메일을 가져 오는 코드가 있습니다. 내 단계 :POP3 프로토콜을 사용하는 Javamail : 15 개월 동안 로그인 제한을 초과
- 연결
- 폴더를 엽니 다
- 를 절단하는 폴더
- 닫기 일부 정보
- 닫기 저장
을 받기하지만 언젠가 내가이 함수를 호출, 내가 메시지를 받았습니다 보낸 사람 :
ERR Exceeded the login limit for a 15 minute period. Reduce the frequency of requests to the POP3 server
그래서 어떻게 이런 문제를 해결할 수 있습니까? 나는 연결을 닫고 새로운 것을 열었다. 내가 왜이 오류가있어 연결을 유지하지 않았다
public boolean POPgetMail(final String EMAIL,final String PASS,final String Type,boolean isNewMail) {
int NUMBER_MAIL=5;
Message[] message_s = null;
Properties props2 = System.getProperties();
props2.setProperty("mail.store.protocol", "pop3s");
Session session2 = Session.getInstance(props2, null);
session2.setDebug(true);
try {
Store store = session2.getStore("pop3s");
HOSTGET = "pop3.live.com";
store.connect(HOSTGET,EMAIL,PASS);
Log.i("","Connect Success");
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_ONLY);
int new_mail=0;
message_s = folder.getMessages();
int countMail =folder.getMessageCount() -1;
if(countMail<0) {
folder.close(true);
store.close();
return false;
}
Log.i("","Total Mail + "+ countMail);
for (int i =countMail;i > NUMBER_MAIL;i--)
{
Message message = message_s[i];
if(message != null)
{
Log.i("MAIL","LOading Mail ID = " + i);
String subject ="No Subject";
try {
subject=message.getSubject().toString();
}
catch(Exception e)
{
Log.i("XX",e.toString());
}
String contents="";
int ID =i;
Date Date = message.getSentDate();
String date = DatenTime.convertDate(Date);
Address[] froms = message.getFrom();
//get TO
String to="";
try {
Address[] tos = message.getRecipients(Message.RecipientType.TO);
if(tos!=null)
{
for (int j=0;j<tos.length;j++){
to+=((InternetAddress)tos[j]).getAddress() +";";
Log.i("","TOOOOOOOO" + to);
}
}
}
catch (Exception e)
{
Log.i("",e.toString());
}
//get CC
Address[] toCC = message.getRecipients(Message.RecipientType.CC);
String CC="";
if(toCC!=null)
{
for (int j=0;j<toCC.length;j++){
CC+=((InternetAddress)toCC[j]).getAddress() +";";
Log.i("","TOOOOOOOO" + CC);
}
String name = ((InternetAddress) froms[0]).toUnicodeString();
String from = ((InternetAddress) froms[0]).getAddress();
if(mDB.InsertEmailData(ID,EMAIL,name,from,to,CC,contents,subject,date,Define.INBOX)!=-1)
{
System.out.println("get mail success");
}
}
}
folder.close(true);
store.close();
mDB.close();
return true;
} catch (Exception e) {
Log.i("","EX " + e.toString());
return false;
}
}