2017-06-20 88 views
0

我拼命嘗試所有可以在我的Android應用程序上實現電子郵件意向但它仍然告訴我「沒有應用程序可以執行此操作」。但是在我的模擬器和真實設備中,我安裝了電子郵件客戶端。 我需要知道做錯了什麼。處理電子郵件意圖時遇到困難

Intent email = new Intent(Intent.ACTION_SENDTO); 
      email.setType("text/plain"); 
      email.setData(Uri.parse("mailto:[email protected]")); 
      email.putExtra(Intent.EXTRA_SUBJECT, "Enter Subject Here"); 
      email.putExtra(Intent.EXTRA_TEXT, "Type your message"); 
      startActivity(Intent.createChooser(email, "Send mail...")); 

回答

0

如果是從字面上你正在執行的代碼,你的問題就在這裏:

email.setData(Uri.parse("mail to")); 
email.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); 

這兩行替換爲:

email.setData(Uri.parse("mailto:[email protected]")); 

mail to不是有效UriACTION_SENDTO不會使用EXTRA_EMAIL

+0

我試過你的解決方案,我已經更新了我的問題上面。但它顯示了同樣的錯誤 - 沒有應用程序可以執行此操作。 –

+0

@BenAjax:也許這些電子郵件客戶端還沒有設置帳戶。或者,也許他們不支持ACTION_SENDTO。你修改後的代碼對我來說看起來不錯 – CommonsWare

+0

我已經解決了這個問題。我的代碼中有不必要的聲明。謝謝 –