не получается использовать java mail в android

286
19 марта 2017, 03:46

Добрый день.

Код:

Session session = null;
ProgressDialog pdialog = null;
Context context = null;
EditText reciep, sub, msg;
String rec, subject, textMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    context = this;
    Button login = (Button) findViewById(R.id.btn_submit);
    reciep = (EditText) findViewById(R.id.et_to);
    sub = (EditText) findViewById(R.id.et_sub);
    msg = (EditText) findViewById(R.id.et_text);
    login.setOnClickListener(this);
}
@Override
public void onClick(View v) {
    rec = reciep.getText().toString();
    subject = sub.getText().toString();
    textMessage = msg.getText().toString();
    Properties props = new Properties();
    props.put("mail.smtp.host", "smtp.gmail.com");
    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.getDefaultInstance(props, new Authenticator() {
        protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication("testfrom354@gmail.com", "p1234p1234");
        }
    });
    pdialog = ProgressDialog.show(context, "", "Sending Mail...", true);
    RetreiveFeedTask task = new RetreiveFeedTask();
    task.execute();
}
class RetreiveFeedTask extends AsyncTask<String, Void, String> {
    @Override
    protected String doInBackground(String... params) {
        try{
            Message message = new MimeMessage(session);
            message.setFrom(new InternetAddress("testfrom354@gmail.com"));
            message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(rec));
            message.setSubject(subject);
            message.setContent(textMessage, "text/html; charset=utf-8");
            Transport.send(message);
        } catch(MessagingException e) {
            e.printStackTrace();
        } catch(Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    @Override
    protected void onPostExecute(String result) {
        pdialog.dismiss();
        reciep.setText("");
        msg.setText("");
        sub.setText("");
        Toast.makeText(getApplicationContext(), "Message sent", Toast.LENGTH_LONG).show();
    }
}
}

В этой строке :

Transport.send(message);

Возникает ошибка:

javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465; W/System.err: nested exception is: W/System.err: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

Такая ошибка.Подскажете что делать? P.S логин и пароль от аккаунта верные,в этом приере изменены

READ ALSO
Как лучше разметить?

Как лучше разметить?

Как лучше разметить данную структуру по бэм? Все оставить как есть или лучше разбить по блокам вложенные элементы

264
Toggle в новой версии jquery нету? Подскажите что нибудь подобное toggle.

Toggle в новой версии jquery нету? Подскажите что нибудь подобное toggle.

Ставлю toggle на список li он весь исчезает! В интернете прочитал, что эту функцию убрали

311
Ограничение текста в ширину

Ограничение текста в ширину

ПриветствуюИнтересует такой вопрос:

365
Проблемы с hover на картинке

Проблемы с hover на картинке

Есть картинкаpng, я повесил на нее :hover, но при наведении меняется все кроме картинки, в чем может быть проблема ?

345