所以发送电子邮件在 - https://developer.android.com/guide/components/intents-common.html#Email 上有详细记录 如下:-
public void composeEmail(String[] addresses, String subject) {
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:")); // only email apps should handle this
intent.putExtra(Intent.EXTRA_EMAIL, addresses);
intent.putExtra(Intent.EXTRA_SUBJECT, subject);
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(intent);
}
}
我假设上面的代码会打开或要求您打开电子邮件应用程序(例如 gmail)以发送您的电子邮件。
所以我搜索了另一种无需打开应用程序即可发送消息的方法。我发现了这个:- http://www.edumobile.org/android/send-email-on-button-click-without-email-chooser/
上面的链接显示您基本上必须使用 gmail SMTP 和 JavaMail api 构建您自己的自定义电子邮件应用
我的问题是,有没有办法不发送电子邮件
一个。打开另一个应用程序。
B.使用 java 邮件等外部库?
最佳答案
答案是否定的,如果您认为以下是“外部库”:
import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.security.AccessController;
import java.security.Provider;
如果您不考虑那些“外部”,如果需要,我可以为您提供适用于 Android 8.1 的代码。已通过 Gmail、Yahoo 和其他网站进行测试。
否则,据我所知,没有原生 Android API 允许直接发送电子邮件(即不通过应用程序)。
关于java - 是否可以在不启动相应应用程序的情况下在android中发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49345368/