¿Cómo puedo iniciar la aplicación de correo electrónico con el campo "a" pre-llenado?
He intentado este código que encontré aquí:
Intent intent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts("mailto", "[email protected]", null)); startActivity(intent);
Pero recibo un mensaje en la pantalla que dice "Unsupported Action". ¿Alguna idea de cómo conseguir esto trabajando?
- Enviar correo electrónico automático mediante programación
- No puedo enviar correo desde Google Glass
- ¿Cómo puedo obtener los mensajes en la carpeta de la bandeja de entrada del cliente de Gmail / correo electrónico?
- Android - Cómo averiguar si el correo electrónico se envió comprobando los elementos enviados
- Android Facebook SDK 4.X, cómo obtener la dirección de correo electrónico y la clave de acceso de Facebook para pasarla al servicio Web
¡Gracias!
- ¿Cómo puedo enviar un correo electrónico de la aplicación android directamente sin mostrar el formulario de correo electrónico predeterminado del dispositivo?
- Android - ¿Cómo abrir la aplicación de correo electrónico?
- El cuerpo del correo electrónico no se muestra cuando se utiliza un intento
- ANDROID: cliente de correo electrónico receptor e-mail id vacío en android-parse
- Cómo enviar correos electrónicos con archivos adjuntos de gran tamaño utilizando la API de cliente de gmail en Android
- Obtener notificación enviada por correo electrónico en onActivityResult "Android"
- Teclado amigable de correo electrónico de Android en el campo de entrada de webview
- ¿Cómo puedo enviar mensajes de correo electrónico desde mi aplicación de Android?
Pruebe este fragmento :
/* Create the Intent */ final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); /* Fill it with Data */ emailIntent.setType("plain/text"); emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject"); emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Text"); /* Send it off to the Activity-Chooser */ context.startActivity(Intent.createChooser(emailIntent, "Send mail..."));
Claves: utilizando EXTRA_EMAIL
para sus direcciones y usando createChooser()
en caso de que el usuario tenga configurado más de un cliente de correo electrónico.
Has probado
Intent intent = new Intent( Intent.ACTION_SENDTO, Uri.parse("mailto:[email protected]") ); startActivity(intent);
Creo que los problemas reales aquí son que usted está funcionando en el emulador oficial y su intención no está emparejando cualquier cosa.
De mis pruebas, este es un problema que ocurre cuando el URI de la intención (de setData()
) no coincide con nada y estás corriendo en uno de los emuladores oficiales de Android. Esto no parece suceder en dispositivos reales, por lo que no debería ser un problema del mundo real.
Puede utilizar este código para detectar cuándo va a suceder esto antes de iniciar la intención:
ComponentName emailApp = intent.resolveActivity(getPackageManager()); ComponentName unsupportedAction = ComponentName.unflattenFromString("com.android.fallback/.Fallback"); boolean hasEmailApp = emailApp != null && !emailApp.equals(unsupportedAction);
(El nombre de la actividad que muestra el método de acción "Acción no admitida" es com.android.fallback.FallbackActivity
.)
- Android no puede importar servicios de Google Play
- Botón de inicio de sesión de Google para Android y diseño de botón de Facebook para sdk 4+