我正在使用此代码通过意图打开电子邮件选择器
val mIntent = Intent(
Intent.ACTION_SENDTO, Uri.fromParts(
"mailto",
"name@email.com", null
)
)
mIntent.putExtra(Intent.EXTRA_SUBJECT, "[Feedback - App Name]")
mIntent.putExtra(Intent.EXTRA_TEXT, "")
try {
startActivity(Intent.createChooser(mIntent, "Choose Email Client..."))
} catch (e: Exception) {
(activity as MainActivity).showToast("There are no email clients installed.")
}
它按预期工作,但它还在电子邮件客户端列表中包含 PayPal 应用程序。
单击 PayPal 后,如果电子邮件已使用 PayPal 注册,它会重定向到付款页面。如果没有注册,它会显示在屏幕下方。
在这两种情况下,都没有从 PayPal 应用程序发送电子邮件的选项。
那么,如何在意图选择器中仅包含电子邮件客户端?
我也试过这段代码,结果也是一样的。
val intent = Intent(Intent.ACTION_SENDTO)
intent.data = Uri.parse("mailto:")
intent.putExtra(Intent.EXTRA_EMAIL, "addresses")
intent.putExtra(Intent.EXTRA_SUBJECT, "subject")
if (intent.resolveActivity(activity?.getPackageManager()!!) != null) {
startActivity(Intent.createChooser(intent, "Choose Email Client..."))
}
编辑 :
我已经检查了打开相同对话框的其他应用程序。可能是 PayPal 应用正在收听邮件事件。