отправка электронной почты в Android

#android

#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:"));

            }
        });
    }
}
  

Это мой код.Я не получаю никаких писем.Мне нужно отправлять электронные письма с помощью этого метода намерения.как я могу этого добиться?Где я ошибся?пожалуйста, дайте несколько предложений.

При нажатии кнопки «Отправить электронное письмо» я получаю сообщение об ошибке «Никакие приложения не могут выполнить это действие».

Комментарии:

1. лучше проверить это на устройстве, а не в эмуляторе

2. я думаю, вы тестируете это приложение в эмуляторе? я прав? в эмуляторе нет такого приложения, как gmail или любое другое, которое может отправлять электронные письма. Поэтому лучше запускать это приложение на устройстве (мобильные телефоны).

Ответ №1:

Это мой код для отправки электронных писем:

     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"));
  

Попробуйте удалить обычный / текстовый тип?

Ответ №2:

Рекомендуется работать с оригинальным устройством, а не на виртуальном устройстве. Я предлагаю вам попробовать этот блок кода на реальном устройстве.

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

Если вы хотите узнать больше о электронной почте с намерением, обратитесь к этому сообщению:
http://androidtutforbeginner.blogspot.com/2012/03/send-email-with-intent-in-android.html