2010-11-21 18 views
1

自分のメールアドレスを使用して特定のアドレスにメールを送信しようとしています。 これまでのところ、私はandroid.content.Intent.ACTION_SENDを使って電子メールを送ることができることを知っています。 istanceについて:Android android.content.Intent.ACTION_SENDを使用してメールを送信(ユーザー名とパスワードの認証あり)

final Intent emailIntent = new 
Intent(android.content.Intent.ACTION_SEND); 
emailIntent.setType("plain/text"); 
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, 
    new String[]{"[email protected]"}); 
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, 
    "Log-in Sucessful"); 
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Hi"); 

Activity context = null; 
context.startActivity(Intent.createChooser(emailIntent, "Send mail...")); 

しかし、私はACTION_SENDは同様に、ユーザ名とパスワードを受け入れることができるかどうかわかりません。このユーザー名とパスワードは、基本的に電子メール送信者の認証に使用されます。それはあなたがあなたのGmailアカウントにログインしてから、メールを作成して誰かに送る必要があるときと同じです。

これを行うための解決策やガイドがありますか?

は、事前に

答えて

1

を皆さんありがとうしかし、私はACTION_SENDは同様に、ユーザ名とパスワードを受け入れることができるかどうかわかりません。

いいえ、それもそうではありません。電子メールクライアントには電子メールアカウントが設定されている必要があります。

2

私の前にCommonsWareがいたが、彼/彼女は言った。 :D

基本的にACTION_SENDは単に「一般的な」送信インテント(イオン)であり、これがセレクタのポイントです。例...電子メールを送信するために私の電話で連絡先を選ぶと、「メール」アプリ(SMTP/POP3/IMAP4)またはGMailアプリを選択することができます。どちらの場合でも、私はこれらのアプリケーションをユーザ名/パスワードの詳細と、必要な場合に必要な着信/発信サーバの詳細で設定しました。

要するに、ACTION_SENDは、これらの詳細が該当する送信サーバを明示的に知らないため、ユーザ名/パスワードは無用です。

私が知る限り、これを完全に自動化したいと思っています。メッセージとともにユーザー名/パスワードとサーバーの詳細を渡すことができる独自のSMTPクライアントコードを作成する必要があることを示唆しています。

関連する問題