android - 电子邮件意图值未设置为“TO”:地址
问题描述
我试图将我的电子邮件添加到“收件人”地址,但它是从地址输入的。
如何在 Android Studio中将我的电子邮件添加到“收件人”地址
这是我的代码
` val btn: Button = findViewById(R.id.button)
btn.setOnClickListener{
val mailIntent = Intent(Intent.ACTION_SEND)
mailIntent.type = "text/plain"
mailIntent.putExtra(Intent.EXTRA_EMAIL,"ramanathank18@gmail.com")
mailIntent.putExtra(Intent.EXTRA_SUBJECT,"")
mailIntent.putExtra(Intent.EXTRA_TEXT,"")
startActivity(Intent.createChooser(mailIntent, "Send Email"))
`
请帮助我如何解决这个问题
解决方案
val mailIntent = Intent(Intent.ACTION_SEND)
而不是使用Intent.ACTION_SEND
,您可以使用Intent.ACTION_SENDTO
这将只为您列出电子邮件客户端。
此外,请参阅此答案以获得更清晰和更新的答案
https://stackoverflow.com/a/15022153/13597058
更新 :
send_mail.setOnClickListener {
val i = Intent(Intent.ACTION_SEND)
i.type = "message/rfc822"
i.putExtra(Intent.EXTRA_EMAIL, arrayOf("recipient@example.com"))
i.putExtra(Intent.EXTRA_SUBJECT, "subject of email")
i.putExtra(Intent.EXTRA_TEXT, "body of email")
try {
startActivity(Intent.createChooser(i, "Send mail..."))
} catch (ex: ActivityNotFoundException) {
Toast.makeText(
this,
"There are no email clients installed.",
Toast.LENGTH_SHORT
).show()
}
}
这段代码解决了你的问题。
推荐阅读
- sql - SQL 如何在 SUM 中使用 LAG
- kubernetes - 根据 Kubernetes Ingress 中的路径动态设置服务名称
- reactjs - 我如何让一个对象像孩子一样通过
- visual-studio - 在 Visual Studio 2019 中配置 Microsoft 身份平台时出错
- azure-pipelines - 我需要转义 SQL Deploy 数据库密码中的字符吗?如何?
- java - Discord4J 问题:改为循环发送消息
- libreoffice-calc - 相对参考未按预期工作的示例
- database - 在 Anylogic 中避免数据库查询
- android - Firebase Android:仅在多次刷新后才加载新数据
- drools - 累积/收集与单个 java 循环