我正在考虑为Android构建一个电子邮件客户端,我注意到android上的默认电子邮件应用程序可以使用设备上的帐户来获取电子邮件凭据。对于交换电子邮件帐户,我能够将其与Android帐户系统连接,但不能与K-9邮件连接。默认应用程序现在作为客户端工作正常,但真的很笨重。 我一直在寻找AndroidMail和MailActivity的源代码,但我没有太多运气找到任何相关的东西。 我的目标是让用户使用Android帐户系统连接他们的电子邮件帐户,然后在电子邮件客户端中使用该帐户。这可能吗?
答案 0 :(得分:0)
最简单的方法是将您的电子邮件位(To,Subject,Message)作为Android的意图传递给用户,让用户选择安装最佳的应用来处理它。这是我在我的一个应用程序中使用的方法。对于" To"您需要传递字符串数组以处理多个收件人的参数。
private void sendMailAsIntent(String mTo, String mSubject, String mMessage) {
Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
emailIntent.setData(Uri.parse("mailto:"));
String aEmailList[] = { mTo };
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, aEmailList);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, mSubject);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, mMessage);
startActivity(Intent.createChooser(emailIntent, "Send E-mail..."));
}