2013-04-03 78 views
0

我開始使用我的活動(本地電子郵件或Gmail)中的意圖發送電子郵件客戶端。我只想在用戶按下發送按鈕或放棄電子郵件時收到通知。我只想在用戶按發送按鈕時開始另一個活動,並且想要在用戶放棄電子郵件時顯示對話框。如何獲得通知發送或取消電子郵件

這裏是我的代碼

Intent emailIntent = new Intent(Intent.ACTION_SEND_MULTIPLE); 
    emailIntent.setType("message/rfc822"); 
    emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] {"[email protected]"}); 
    emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Test Mail"); 
    emailIntent.putExtra(Intent.EXTRA_TEXT, "Test Mail Subject"); 
    startActivityForResult(emailIntent, REQ_CODE); 


public void onActivityResult(int requestCode, int resultCode, 
     Intent data) { 

    if(requestCode == REQ_CODE){ 
     Toast.makeText(getApplicationContext(), "resultCode "+resultCode, Toast.LENGTH_LONG).show(); 
     //if(resultCode == RESULT_OK){ 


     //} 
    } 
} 

在此先感謝..

+1

而不是startActivty()方法,用戶startActivtyForResult()方法。 – Lucifer

+0

谷歌它有很多SO帖子與此相關 –

+0

@Lucifer我試過startActivtyForResult(),但我得到0作爲結果代碼發送或取消電子郵件。 – Aju

回答

1

這是不可能的。 ACTION_SEND不適合與startActivityForResult()一起使用,並且沒有人(更不用說用戶碰巧選擇的任何電子郵件客戶端)有義務撥打setResult()來讓您知道用戶做了什麼。

+1

你是否知道我的問題的解決方法。我想知道電子​​郵件是否在我的活動中發送或取消? – Aju

+1

@Aju:「你知道我的問題的任何解決方法嗎」 - 自己發送電子郵件,例如使用Android的JavaMail端口,或通過Web服務器從您自己的帳戶發送郵件。 – CommonsWare

+0

我不能使用任何第三方Apis,因爲它受限於我目前的項目。 – Aju

相關問題