¿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áticamente desde la aplicación de Android a través de Exchange Server
- Abrir un cliente de correo electrónico al hacer clic en un botón
- Cómo obtener la dirección de correo electrónico principal del dispositivo Android
- Cómo obtener la información de la cuenta de correo electrónico predeterminada en android ..?
- Cómo adjuntar archivos con el envío de correo en la aplicación Android?
¡Gracias!
- Cómo enviar correo de forma programática en android utilizando token OAuth2.0
- 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
- Correo electrónico del almacenamiento interno
- ¿Existe un cliente de correo electrónico de código abierto de Android?
- Cómo reemplazar / desinstalar la aplicación de correo electrónico del emulador de Android
- ¿Cómo puedo enviar mensajes de correo electrónico desde mi aplicación de Android?
- Enviar correo electrónico en Android sin usuario interacton
- Android - ¿Cómo abrir la aplicación de correo electrónico?
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+