2011-12-21 47 views
-1

我創建在其中,用戶可以通過點擊分享按鈕,「東西」的應用程序。 步驟分享「東西」是:Android中的Gmail的操作意圖?

  1. 在點擊分享按鈕聯繫人列表應該打開
  2. 選擇聯繫人(具有有效的電子郵件地址)的數據應該被直接發送到選定的聯繫人從發送方的默認電子郵件地址(Gmail)時彈出窗口中選擇一個電子郵件客戶端,如「Gmail的」,「Dropbox的」等。

我設法得到聯繫人的電子郵件ID與 幫助http://mobile.tutsplus.com/tutorials/android/android-essentials-using-the-contact-picker/ 而是選擇接觸後,我得到一個PO這裏p彌補選擇一個電子郵件客戶端,如「Gmail的」,「Dropbox的」等。

是到目前爲止我的代碼

 if(email.length() != 0) 
     { 
      Intent sharingIntent = new Intent(
        android.content.Intent.ACTION_SEND); 
      sharingIntent.setType("message/rfc822"); 
      String shareBody = 
          "Hey buddy listen to this station it is awesome\n" 
          + mNowPlayingSong.mAudioUrl; 
      sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, 
          "I liked this song"); 
      sharingIntent.putExtra(              
          android.content.Intent.EXTRA_TEXT, shareBody); 
      String emailAddressList[] = {email}; 
      sharingIntent.putExtra(Intent.EXTRA_EMAIL, emailAddressList); 
      startActivity(sharingIntent); 
+1

什麼你想要做的是不是真的有可能。我的意思是,可以直接打開Gmail,但仍然必須從Gmail應用程序發送它。我個人認爲你應該讓用戶選擇。也就是說,如果你有自己的域名/ web服務器或者可以找一些第三方服務 - 如果你要發送的電子郵件上你自己的,你可以用Web服務器這樣做的時候。 – Jakar 2011-12-21 13:08:50

+0

它不是,這是不可能的,因爲我已經看到了應用程序,它喜歡我想要的。所以我確信有一些解決方案,我正在努力尋找它。所以請儘量提供幫助,並且還請告訴我如何直接打開Gmail? – shankey 2011-12-21 13:20:38

+1

爲什麼你不希望你的用戶能夠選擇他們使用哪個電子郵件客戶端或地址?您是否考慮過某些人使用不同的電子郵件地址與不同人羣進行交流的可能性?此外,您可以以正確的意圖啓動任何其他應用程序。下面是官方文檔,你可以爲具體google一下推出Gmail的自己:http://developer.android.com/guide/topics/fundamentals.html#ActivatingComponents。 – ethan 2011-12-21 13:47:15

回答

3

你不能用默認的應用程序靜默發送電子郵件。您只能創建一個將調用活動的意圖,並填寫所有字段。

另一種可能性是嵌入到自己的電子郵件客戶端爲你的應用程序。在這種情況下,如果用戶提供憑據,那麼您將有可能悄悄地發送電子郵件。爲了實現第二個選項檢查: Sending Email in Android using JavaMail API without using the default/built-in app

+0

但在javamail中,您必須提供密碼硬編碼。那麼還有其他選擇嗎? – shankey 2011-12-30 07:00:38

+0

我並不確切,但請查看AccountManager – Yury 2011-12-30 07:18:26