2015-03-19 103 views
0

我正在研究为Android构建电子邮件客户端,并且我注意到Android上的默认电子邮件应用程序可以使用设备上的帐户来获取电子邮件凭据。对于交换电子邮件帐户,我可以将其与Android帐户系统连接,但不能与K-9邮件连接。默认的应用程序现在可以很好地作为客户端,但实际上非常笨重。 我一直在寻找AndroidMail和MailActivity的源代码,但我没有多少运气找到任何相关的东西。 我的目标是让用户使用Android帐户系统连接他们的电子邮件帐户,然后在电子邮件客户端中使用该帐户。这可能吗?使用Android帐户凭据发送电子邮件

+0

AccountManager是它叫什么。 http://developer.android.com/reference/android/accounts/AccountManager.html所以你成功地连接AccountManager与Exchange?但不是K-9邮件?那是对的吗? K-9有什么错误? – 2015-05-18 13:11:52

回答

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...")); 
} 
相关问题