2017-02-07 2 views
-1

Я использую почту java для отправки автоматической почты при нажатии кнопки. Я работаю над андроид-студией, и я получаю ошибку javax.mail.AuthenticationFailedException, и я не могу найти почему.Java-почта не работает должным образом

  • Я попытался изменить порт 25 - 587 и 465
  • Id правильны
  • примерил эмуляторе и на реальном устройстве
  • мой Gmail открыт счет низкой безопасного применения

вот код:

Properties props = new Properties(); 
     props.put("mail.smtp.host" , "smtp.gmail.com"); 
     props.put("mail.stmp.user" , "[email protected]"); 

     //TLS 
     props.put("mail.smtp.auth", "true"); 
     props.put("mail.smtp.starttls.enable", "true"); 
     props.put("mail.smtp.password", "xxxxx"); 

     //SSL 
     props.put("mail.smtp.socketFactory.port", "465"); 
     props.put("mail.smtp.socketFactory.class", 
       "javax.net.ssl.SSLSocketFactory"); 
     props.put("mail.smtp.auth", "true"); 
     props.put("mail.smtp.port", "465"); 

     Session session = Session.getDefaultInstance(props , null); 
     String to = "[email protected]"; 
     String from = "[email protected]"; 
     String subject = "Testing..."; 
     Message msg = new MimeMessage(session); 
     try { 
      msg.setFrom(new InternetAddress(from)); 
      msg.setRecipient(Message.RecipientType.TO, 
        new InternetAddress(to)); 
      msg.setSubject(subject); 
      msg.setText("Working fine..!"); 
      Transport transport = session.getTransport("smtp"); 
      transport.connect("smtp.gmail.com" , 465 , "[email protected]", "xxxx"); 
      transport.send(msg); 
      System.out.println("fine!!"); 
     } 
     catch(Exception exc) { 
      System.out.println(exc); 
     } 
+1

Fix эта [общее JavaMail ошибка] (http://www.oracle.com/technetwork/java/javamail/faq/index.html#commonmistakes), обновить свой пост с новым кодом, и если он все еще не работает, обновите сообщение с помощью [вывода отладки JavaMail] (http://www.oracle.com/technetwork/java/javamail/faq/index.html#debug). –

ответ

Смежные вопросы