user977808
user977808

Reputation: 223

sending email in android

public class AndroidEmailActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        final EditText edittextEmailAddress = (EditText) findViewById(R.id.email_address);
        final EditText edittextEmailSubject = (EditText) findViewById(R.id.email_subject);
        final EditText edittextEmailText = (EditText) findViewById(R.id.email_text);
        Button buttonSendEmail_intent = (Button) findViewById(R.id.sendemail_intent);

        buttonSendEmail_intent.setOnClickListener(new Button.OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub

                String emailAddress = edittextEmailAddress.getText().toString();
                String emailSubject = edittextEmailSubject.getText().toString();
                String emailText = edittextEmailText.getText().toString();

                String emailAddressList[] = { emailAddress };

                Intent intent = new Intent(Intent.ACTION_SEND);
                intent.setType("plain/text");
                intent.putExtra(Intent.EXTRA_EMAIL, emailAddressList);
                intent.putExtra(Intent.EXTRA_SUBJECT, emailSubject);
                intent.putExtra(Intent.EXTRA_TEXT, emailText);
                startActivity(Intent.createChooser(intent,
                        "Choice App t send email:"));

            }
        });
    }
}

This is my code.I am not getting any emails.I need to send emails through this intent method.how can I acheive that?Where I went wrong?pls give some suggestions.

I am getting the error when I click the Send email button as "No applications can perform this action."

Upvotes: 0

Views: 516

Answers (2)

user712051
user712051

Reputation: 154

It is Good practice to work with original device rather than on Virtual Device. I suggest you try this code block on real device.

Intent sendEmail= new Intent(Intent.ACTION_SEND);
sendEmail.setType("plain/text");
startActivity(Intent.createChooser(sendEmail, "Email:"));

If you want to see more on Email with Intent then refer to this post: http://androidtutforbeginner.blogspot.com/2012/03/send-email-with-intent-in-android.html

Upvotes: 0

Martyn
Martyn

Reputation: 16622

This is my code to send emails:

    Intent sendIntent = new Intent(Intent.ACTION_SEND);
    sendIntent.putExtra(Intent.EXTRA_SUBJECT, activity.getString(R.string.share_email_subject));
    sendIntent.setType("message/rfc822");
    activity.startActivity(Intent.createChooser(sendIntent, "Choose Email Client"));

Try removing the plain/text type?

Upvotes: 1

Related Questions