安卓 java发送邮件
时间: 2023-10-08 11:03:00 浏览: 43
在安卓Java平台上,我们可以使用JavaMail库来发送邮件。首先,我们需要在Android项目的build.gradle文件中添加以下依赖:
```
dependencies {
implementation 'com.sun.mail:android-mail:1.6.2'
implementation 'com.sun.mail:android-activation:1.6.2'
}
```
接下来,我们可以创建一个发送邮件的方法。首先,我们需要创建一个Properties对象来设置邮件服务器的相关信息,并启用SSL加密。例如:
```java
private static void sendEmail(String to, String subject, String body) {
// 设置邮件服务器信息
Properties properties = new Properties();
properties.put("mail.smtp.host", "smtp.example.com");
properties.put("mail.smtp.port", "465");
properties.put("mail.smtp.ssl.enable", "true");
// 创建会话
Session session = Session.getInstance(properties);
try {
// 创建邮件对象
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress("sender@example.com"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
message.setSubject(subject);
message.setText(body);
// 发送邮件
Transport.send(message);
} catch (MessagingException e) {
e.printStackTrace();
}
}
```
在此示例中,我们将邮件发送到`to`指定的收件人,`subject`指定邮件主题,`body`指定邮件内容。我们还设置了邮件服务器的主机名`smtp.example.com`和端口号`465`,并启用了SSL加密。
需要注意的是,为了发送邮件,您需要在发送者地址(`sender@example.com`)和邮件服务器的登录凭据(用户名和密码)之间进行身份验证,具体取决于您使用的邮件服务器。您可以使用`properties.put("mail.smtp.auth", "true")`启用身份验证,并使用`Authenticator`类提供用户名和密码。
请确保您的应用程序在`AndroidManifest.xml`文件中具有适当的权限:
```xml
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
```
通过调用`sendEmail`方法,您可以在安卓Java应用程序中发送邮件。