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...")); 
} 
相關問題