2011-05-04 134 views

回答

0

不要提示用戶沒有配置電子郵件客戶端,可以考慮通過createChooser()將ACTION_SEND意圖包裝在選擇器中。 createChooser()將返回用戶選擇的意圖。如果用戶沒有選擇有效的電子郵件客戶端,則可能會彈出錯誤消息或向用戶提供設置屏幕以聲明有效的電子郵件客戶端。

請注意,無法確定發送應用程序是否爲有效的「電子郵件」應用程序,只是它是否爲發送應用程序。這就是應該使用選擇器的原因,這樣用戶纔會意識到他們沒有設置電子郵件客戶端。另外請注意,用戶沒有電子郵件客戶端是非常罕見的,因爲他們必須至少在他們的Google帳戶啓動電話時註冊(讓他們訪問Gmail)。

這是一個有一個選擇器發送郵件的例子:

sendIntent = new Intent(Intent.ACTION_SEND); 
sendIntent.setType("application/octet-stream"); 
sendIntent.putExtra(Intent.EXTRA_EMAIL,new String[] {"[email protected]"}); 
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Email Subject"); 
sendIntent.putExtra(Intent.EXTRA_TEXT, "Body text of email message"); 
startActivity(Intent.createChooser(sendIntent, "Send Mail")); 
+0

「另外請注意,這是極爲罕見的用戶沒有電子郵件客戶端,因爲它們必須至少與他們的谷歌帳戶註冊時,他們開始他們的電話(讓他們訪問Gmail)「。這不是真的。我向本地企業銷售應用程序供內部使用,並且我提供在新的或使用過的Android手機上預安裝(以價格購買)。我剛剛在10款全新的三星Galaxy Xcover 3手機上安裝了我的應用程序,並在與客戶覈對之後決定不爲該手機創建任何Google帳戶。 – RenniePet 2016-02-03 02:12:19