Посылать электронную почту без взаимодействия с пользователем

Я хочу послать электронную почту, реализовав действие, определенное, а именно, выполнив один Asyntask, но без того, чтобы у пользователя есть, что eligir приложение, чтобы посылать почту. Я искал информацию об этом но ничем полезном до сих пор. у кого-то какой-то метод есть, чтобы это реализовывать?

У меня есть следующий код

  Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
                    "mailto","algo@gmail.com", null));
            emailIntent.putExtra(Intent.EXTRA_SUBJECT, "texto");
            emailIntent.putExtra(Intent.EXTRA_TEXT, "*Ayudanos mejorar enviando, tu sugerencia o reportando un error*)");
            startActivity(Intent.createChooser(emailIntent, "Enviar comentarios sobre algo"));

существует какой-то способ это выполнять без взаимодействия? Если дело в том, что нет другого метода

3
задан 07.04.2017, 07:10
0 ответов

Если ты хочешь реализовать это "автоматически", закончив realiza Asynctask, просто назови отправление в методе onPostExecute():

 protected void onPostExecute(String result) {

           Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
                    "mailto","algo@gmail.com", null));
            emailIntent.putExtra(Intent.EXTRA_SUBJECT, "texto");
            emailIntent.putExtra(Intent.EXTRA_TEXT, "*Ayudanos mejorar enviando, tu sugerencia o reportando un error*)");
            mContext.startActivity(Intent.createChooser(emailIntent, "Enviar comentarios sobre algo"));

     }

Очень важно, если имеешь ты Asynctask в другом классе, в строителе Asynctask ты должен получать контекст;

   public MyAsyncTask (Context context){
         mContext = context;
    }

Это для того, чтобы, реализовав Intent для отправления почты, оно функционировало без проблемы:

  mContext.startActivity(Intent.createChooser(emailIntent, "Enviar comentarios sobre algo"));

Другой метод состоит в том, чтобы реализовывать интерфейс, который назывался бы, когда ты закончился Asynctask, метод onPostExecute(), это, если твой метод для отправления e-mail находится в другом классе.

2
ответ дан 03.12.2019, 17:38
  • 1
    Плохое состоит в том, что я не хочу, чтобы открылся интерфейс... –  18.01.2017, 18:56

Теги

Похожие вопросы