Открытие почтового клиента при нажатии кнопки - PullRequest
43 голосов
/ 29 апреля 2010

Я разрабатываю приложение, в котором мне нужно открыть почтовый клиент при нажатии кнопки. Почтовый клиент должен быть открыт с предварительно определенной темой и адресом «до». Есть ли способ достичь этого? Пожалуйста, предоставьте мне решение и пример кода, если это возможно ...

Ответы [ 4 ]

74 голосов
/ 29 апреля 2010

Идет так:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "some@email.address" });
intent.putExtra(Intent.EXTRA_SUBJECT, "subject");
intent.putExtra(Intent.EXTRA_TEXT, "mail body");
startActivity(Intent.createChooser(intent, ""));

В качестве альтернативы вы можете использовать IntentFactory.getSendEmailIntent (String mailTo, String mailCC, Тема строки, тело CharSequence, вложение файла) .

29 голосов
/ 16 мая 2016

Для показа только почтовых клиентов используйте этот код:

Intent intent = new Intent(Intent.ACTION_VIEW);
Uri data = Uri.parse("mailto:recipient@example.com?subject=" + subject + "&body=" + body);
intent.setData(data);
startActivity(intent);

Если вы уже выбрали почтовый клиент по умолчанию, он запустит его. В противном случае отобразится список доступных почтовых клиентов.

1 голос
/ 08 апреля 2019

Если у вас есть адрес электронной почты на экране, вы можете просто использовать его в xml, например:

android:autoLink="email"
0 голосов
/ 25 апреля 2012

Вы можете открыть почтовый клиент на эмуляторе, настроив свой адрес электронной почты с помощью электронной почты, встроенной в электронную почту. Тогда при звонке откроется умысел и отправит почту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...