Это работает только для приложения gmail.
final Intent intent = new Intent(Intent.ACTION_VIEW)
.setType("plain/text")
.setData(Uri.parse("test@gmail.com"))
.setClassName("com.google.android.gm", "com.google.android.gm.ComposeActivityGmail")
.putExtra(Intent.EXTRA_EMAIL, new String[]{"test@gmail.com"})
.putExtra(Intent.EXTRA_SUBJECT, "test")
.putExtra(Intent.EXTRA_TEXT, "hello. this is a message sent from my demo app :-)");
startActivity(intent);
используйте для большого количества писем:
intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "test@gmail.com" });
для отдельных писем:
intent.setData(Uri.parse("test@gmail.com"));
Вы можете добавить extra putExtra(Intent.EXTRA..)
и изменить setType
для своих целей. : P
Обновление (22.01.14):
Важно отметить, что если вы собираетесь использовать этот код, убедитесь, что у пользователя установлен пакет «com.google.android.gm» на его устройстве. На любом языке обязательно проверяйте нулевое значение в определенных строках и инициализациях.
См. Запуск приложения из другого приложения на Android