我正在使用下面的代码发送电子邮件,但要求提供Gmail凭据。我正在寻找一些类似于mailx的命令,它需要在不询问任何凭据的情况下发送特定地址的电子邮件。任何帮助表示赞赏。
代码
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button: Button = findViewById(R.id.button)
val editTextTo: EditText = findViewById(R.id.editTextTo)
button.setOnClickListener(View.OnClickListener {
val to = editTextTo.getText().toString()
val subject = "Test"
val message = "Test"
val intent = Intent(Intent.ACTION_SEND)
val addressees = arrayOf(to)
intent.putExtra(Intent.EXTRA_EMAIL, addressees)
intent.putExtra(Intent.EXTRA_SUBJECT, subject)
intent.putExtra(Intent.EXTRA_TEXT, message)
intent.setType("message/rfc822")
startActivity(Intent.createChooser(intent, "Send Email using:"));
})
}
}
答案 0 :(得分:0)
有一种Java解决方案试图使您的Kotlin成为一体(对不起,我不喜欢Kotlin)。
将此添加到您的gradle中
implementation 'com.sun.mail:android-mail:1.6.0'
implementation 'com.sun.mail:android-activation:1.6.0'
并添加这两个classes,一个用于创建SMTP服务器,另一个用于安全目的,并按如下方式调用它:
GMailSender sender = new GMailSender(
"you_email@gmail.com",
"password");
sender.sendMail(subject, message,sender,recipients);