2011-03-24 34 views
2

我想我的應用程序與多人共享數據。理想情況下,我希望用戶能夠選擇聯繫人組,並且它將啓動與聯繫人組中的每個人共享該數據的意圖,例如,用填入了該組用戶電子郵件地址的地址字段打開Gmail。這是可能的使用ACTION_SENDTO意圖?我什至不能找到一個如何使用它發送給一個人的例子,更不用說多個了。是否有可能使用ACTION_SENTO意向發送給多個收件人?

回答

0

我希望你用下面的語句在你的代碼

emailIntent .putExtra(android.content.Intent.EXTRA_EMAIL, new String[] {"[email protected]"});

它接受字符串數組,你可以將多個收件人的名字在那裏

+0

這看起來不錯,我有一個去。 – fredley 2011-03-24 13:54:51

-1

您可以使用Intent.ACTION_SEND_MULTIPLE作爲電子郵件的行動啓動將數據發送給多個收件人的意圖。
創建電子郵件ID的列表,並用它對付Intent.EXTRA_EMAIL關鍵,因爲這將包括在場發送電子郵件的形式從電子郵件列表中的所有電子郵件。

這個怎麼樣代碼:

final Intent emailLauncher = new Intent(Intent.ACTION_SEND_MULTIPLE); 
emailLauncher.setType("message/rfc822"); 
emailLauncher.putExtra(Intent.EXTRA_EMAIL, emailList); 
emailLauncher.putExtra(Intent.EXTRA_SUBJECT, "check this subject line"); 
emailLauncher.putExtra(Intent.EXTRA_TEXT, "hey check this message body!"); 
try{ 
     startActivity(emailLauncher); 
}catch(ActivityNotFoundException e){ 

} 


希望這可以幫助你。

+0

ACTION_SEND_MULTIPLE是提供多種數據給別人。 – mattlaabs 2014-08-28 12:02:23

2

使用ACTION_SENDIntent.EXTRA_EMAIL不會限制應用程序選擇器僅電子郵件應用。相反,使用ACTION_SENDTO,如:

final Intent emailIntent = new Intent(android.content.Intent.ACTION_SENDTO); 

emailIntent.setType("message/rfc822"); 
emailIntent.setData(Uri.parse("mailto:[email protected],[email protected]")); 

emailIntent.putExtra(Intent.EXTRA_SUBJECT, "your subject"); 
emailIntent.putExtra(Intent.EXTRA_TEXT, "email content"); 

startActivity(Intent.createChooser(emailIntent, "Send email...")); 

如例子中看到,您可以用英文逗號分隔的烏里發送電子郵件給多個收件人。有沒有必要趕ActivityNotFoundExceptionstartActivity(..),由於Android框架將會爲您處理它的顯示相應的信息給用戶。

如果你想要的格式在HTML電子郵件中,你可以使用:

emailIntent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml("<i>my html-formatted text!</i>")); 
相關問題