2011-03-13 62 views
0

我知道這個問題已經在以前的幾個變種中提出過,但是我的問題圍繞着setType方法展開了更多討論。將文件附加到Android中的電子郵件意圖的問題

我想將一個XML文件附加到我以Intent開頭的電子郵件。代碼是:

File exportPath = (File) data.getExtras().getSerializable("Path"); 
Log.w(TAG, Uri.fromFile(exportPath).toString()); 
Intent email = new Intent(); 
email.setType("application/xml"); 
email.putExtra(Intent.EXTRA_EMAIL, new String[] {user_email}); 
email.putExtra(Intent.EXTRA_SUBJECT, "Test"); 
email.putExtra(Intent.EXTRA_TEXT, "Text"); 
email.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(exportPath)); 

startActivity(Intent.createChooser(email, "Mail job")); 

收件人,主題和文本正確進入,只有附件丟失。

結果: Log.w(TAG,Uri.fromFile(exportPath).toString()); 是file:///mnt/sdcard/SDS2Mobile/model2.xml

我想我的問題是我設置的類型不正確,但我無法找到正確的XML文件類型。有人有主意嗎?

+0

我正試圖給一個sqlite數據庫文件發送電子郵件,並且遇到了最困難的時間。代碼「Uri.fromFile(exportPath)」的一部分是我爲它修復的。太感謝了! – Opy 2011-11-20 19:23:01

+0

你必須用發送命令創建你的意圖,否則我無法讓它工作。 'Intent email = new Intent(Intent.ACTION_SEND);' – AlexIIP 2012-09-21 01:13:16

回答

2

我找到了!在setType()中使用「text/Message」產生了正確的結果。