2017-02-11 3 views
1

Unten ist mein Code für die Verbindung von POP3 mit SSL.Android: Verbindung bei POP3Store abgelehnt

public void pop3()throws Exception{ 

    // connect to my pop3 inbox 
    String a = "javax.net.ssl.SSLSocketFactory"; 
    final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory"; 
    Properties props = new Properties(); 
    props.setProperty("mail.pop3.host" , "myhost"); 
    props.setProperty("mail.pop3.port" , "myport"); 
    props.setProperty("mail.pop3.user" , "username"); 
    // Start SSL connection 
    props.setProperty("mail.pop3.ssl.enable", "true"); 
    props.put("mail.pop3.socketFactory" , "myport"); 
    props.setProperty("mail.pop3.socketFactory.class" , a); 



    Session session = Session.getInstance(props); 

    try { 

     Store emailStore = session.getStore("pop3s"); 

     // getting error while connecting 

     emailStore.connect("myhost",port,"username", "password"); 

     Folder inbox = emailStore.getFolder("Inbox"); 
     inbox.open(Folder.READ_ONLY); 

     // get the list of inbox messages 
     Message[] messages = inbox.getMessages(); 

     if (messages.length == 0) System.out.println("No messages found."); 

     for (int i = 0; i < messages.length; i++) { 
      // stop after listing ten messages 
      if (i > 10) { 
       System.exit(0); 
       inbox.close(true); 
       emailStore.close(); 
      } 

      Log.e("Message " , String.valueOf((i + 1))); 
      Log.e("From : " , String.valueOf(messages[i].getFrom()[0])); 
      Log.e("Subject : " ,messages[i].getSubject()); 
      Log.e("Sent Date : " , String.valueOf(messages[i].getSentDate())); 

     } 

     inbox.close(true); 
     emailStore.close(); 
    } catch (NoSuchProviderException e) { 
     e.printStackTrace(); 
    } 
} 

Jedesmal, Ich erhalte die folgende Fehlermeldung:

W/System.err: javax.mail.MessagingException: Connect failed;

W/System.err: nested exception is:

W/System.err: java.net.ConnectException: Connection refused

W/System.err: at

com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:161)

.....

+0

Die Fehlermeldung ist ziemlich klar: "myhost" hört nicht auf "myport". – arnt

Antwort

0

Sie sich von all den Sockel Fabrik Sachen los, you don't need it.

Sie legen Eigenschaften für das Protokoll "pop3" fest, verwenden jedoch das Protokoll "pop3s". Es ist einfacher, einfach das Protokoll "pop3" zu verwenden und die Eigenschaft mail.pop3.ssl.enable auf true zu setzen.

Verwandte Themen