Android-получение ошибки "ни одно приложение не может выполнить это действие" при попытке отправить электронное письмо?

Я делаю приложение, в котором я собираюсь обеспечить функцию обратной связи с моими клиентами. Чтобы достичь этого, я создал небольшое диалоговое окно, в котором пользователь может вводить туда обратную связь и отправлять ее на мой почтовый идентификатор. Я попробовал некоторые фрагменты кода, которые я нашел в интернете, но всякий раз, когда я пытаюсь отправить электронное письмо с эмулятора или фактического устройства, я получаю сообщение об ошибке "ни одно приложение не может выполнить это действие".

вот мой код :-

public void emailDialog()
{
    AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
    alertDialog.setTitle("Feedback");
    alertDialog.setMessage("Please tell us that what you feel about our product. If you are facing any problem or found any bug then please report to us. Your review is important to us. Thanks!!");
    final EditText input = new EditText(this);
    input.setLines(8);
    alertDialog.setView(input);
    alertDialog.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int whichButton) {
            String value = input.getText().toString();
            String address = "varundroid@gmail.com";
            String subject = "FeedBack";
            final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
            emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, address);
            emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
            emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, value);
            CompleteTaskManager.this.startActivity(Intent.createChooser(emailIntent, "Send Email.."));
        }
    });
    alertDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
      public void onClick(DialogInterface dialog, int whichButton) {
        // Canceled.
      }
    });
alertDialog.show();
}

Пожалуйста, Помогите.

2 ответов


Я думаю, вам нужно установить тип объекта intent. Можете ли вы попробовать следующее

emailIntent.setType("message/rfc822");

или

emailIntent.setType("text/plain");

Если кто-то пытается сделать это из настроек XML, я выполнил это, добавив в элемент Preference намерение с действием ACTION_SENDTO и как данные mailto:your.email@domain.com - ... Надеюсь, это может кому-то помочь.