方法1: Intent.ACTION_SENDを使用する方法
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("message/rfc822");
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); // 宛先のメールアドレス
intent.putExtra(Intent.EXTRA_SUBJECT, "メールの件名"); // メールの件名
intent.putExtra(Intent.EXTRA_TEXT, "メールの本文"); // メールの本文
startActivity(Intent.createChooser(intent, "メールアプリを選択")); // メールアプリを選択するダイアログを表示
方法2: Intent.ACTION_SENDTOを使用する方法
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:[email protected]")); // 宛先のメールアドレス
intent.putExtra(Intent.EXTRA_SUBJECT, "メールの件名"); // メールの件名
intent.putExtra(Intent.EXTRA_TEXT, "メールの本文"); // メールの本文
startActivity(intent);
方法3: JavaMail APIを使用する方法
JavaMail APIを使用するには、まずAndroidプロジェクトに以下の依存関係を追加する必要があります。
implementation 'com.sun.mail:android-mail:1.6.2'
implementation 'com.sun.mail:android-activation:1.6.2'
以下にJavaMail APIを使用してメールを送信する例を示します。
// 必要なインポート文
import javax.mail.Session;
import javax.mail.Message;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
// メール送信メソッド
private void sendEmail() {
// メール設定
String host = "smtp.example.com";
String port = "587";
String username = "your_username";
String password = "your_password";
// 送信元と宛先のメールアドレス
String fromAddress = "[email protected]";
String toAddress = "[email protected]";
// プロパティの設定
Properties properties = new Properties();
properties.put("mail.smtp.host", host);
properties.put("mail.smtp.port", port);
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
// セッションの作成
Session session = Session.getInstance(properties, null);
try {
// メッセージの作成
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(fromAddress));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(toAddress));
message.setSubject("メールの件名");
message.setText("メールの本文");
// 送信
Transport.send(message);
// 送信成功時の処理
// ...
} catch (Exception e) {
// 送信失敗時の処理
// ...
}
}
// メール送信を実行する場所で以下のメソッドを呼び出す
sendEmail();
これらの方法を使用すると、Android Studioで意図を持ったメールを送信することができます。適宜コードを編集して、自分のアプリの要件に合わせてカスタマイズしてください。