Я создал два вида деятельности. У Activity Main есть кнопка, и при нажатии на эту кнопку i m вызывается метод другого класса, который распространяется на AppCompActivity. Имя метода - mailconfig, как показано ниже. Конфиденциальная информация удалена из параметров.Метод не вызывается из mainactivity при нажатии кнопки
public class ButtonActionFrontPage extends AppCompatActivity{
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
}
public void mailconfig(String message) throws EmailException {
String username = "";
String password = "";
String from = "";
String replyto = "";
String mailto = "";
String subject = "";
Email email = new SimpleEmail();
email.setSSLOnConnect(true);
email.isStartTLSEnabled();
email.setHostName("");
email.setSmtpPort(26);
email.setSubject(subject);
email.addReplyTo(replyto);
email.setFrom(from);
email.setAuthenticator(new DefaultAuthenticator(username, password));
email.setMsg(message);
email.addTo(mailto);
email.send();
Toast.makeText(ButtonActionFrontPage.this,"Thanks for submitting ",Toast.LENGTH_SHORT).show();
System.out.println("Sent");
}
}
Я использовал нижеследующий код для вызова метода выше.
feedbackbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
ButtonActionFrontPage buttonActionFrontPage = new ButtonActionFrontPage();
String message = quickfbet.getText().toString();
buttonActionFrontPage.mailconfig(message);
} catch (EmailException e) {
e.printStackTrace();
}
}
});
Что не так в этом коде, почему бы не выполнить.
Попробуйте сделать то же самое, что просто удалить расширяет AppCompatActivity и OnCreate метод в ButtonActionFrontPage –
Вместо того, чтобы создавать его в классе активности, создайте свой метод электронной почты в простом классе java, а затем вызовите его оттуда –
1. Если я удаляю extends и oncreate, мне нужно удалить Toast. Также, как начало показа ошибки. Более того, даже после удаления, он не работает в этом случае. Удивительно, когда я создаю простой метод с оператором sop, называю это, он работал. –