Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo enviar correo electrónico con un enlace para abrir la aplicación de Android

He creado un código que envía un correo electrónico html a una dirección determinada. El correo electrónico contiene un vínculo como el siguiente:

<a href="crystalcloud://android?4567">Click to validate account</a> 

Estaba probando esto enviándolo a mi cuenta de gmail. Por alguna razón, cuando reciba el correo electrónico, no me dejará hacer clic en el enlace. Si pongo este enlace en una página web, mi aplicación se inicia bien.

¿Hay algo especial que tengo que hacer para que este enlace aparezca en un correo electrónico, o simplemente gmail bloquea este tipo de enlaces? ¿Hay alguna manera de evitar este problema en gmail?

EDIT: Añadido fragmentos de mi código

Código para enviar enlace:

  MimeMessage message = new MimeMessage(session); message.setFrom(new InternetAddress(from)); message.addRecipient(Message.RecipientType.TO, new InternetAddress(emailAddress)); message.setSubject("New Crystal Cloud User"); message.setContent("Thank you for creating a new Crystal Cloud account!<br><a href=\"crystalcloud://android?4567">Click to validate account</a>", "text/html; charset=utf-8"); Transport transport = session.getTransport("smtp"); transport.connect(host, from, pass); transport.sendMessage(message, message.getAllRecipients()); transport.close(); 

Código de Android para responder a la intención:

  <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.BROWSABLE" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="crystalcloud" /> </intent-filter> 

  • ¿Cómo calcular el usuario activo en Mobile App Analytics?
  • Java.lang.IllegalMonitorStateException: objeto no bloqueado por hilo antes de wait ()?
  • Android FragmentActivity devuelve null en getActionBar ()
  • ¿Cómo establezco correctamente un punto de interrupción de excepción en Android Studio?
  • Tiempo desplegable en Android
  • Realm java sort con varios campos
  • Robusta transferencia de archivos desde dispositivos móviles al servidor
  • ¿Cómo establecer la posición del diálogo?
  • 3 Solutions collect form web for “Cómo enviar correo electrónico con un enlace para abrir la aplicación de Android”

    Este es un problema con los clientes de correo electrónico de Android que no muestran vínculos como clicable a menos que sean http o https.

    Mi solución fue usar un esquema http para abrir mi aplicación:

     <data android:scheme="http" android:host="com.company.app" android:port="3513" /> 

    Esto funciona, pero en molesto porque le pide al usuario que abra la aplicación en el navegador o su aplicación. Otra solución es tener un enlace a un sitio web que luego hace un redireccionamiento javascript a su aplicación, aunque esto puede causar más problemas.

    En su cabecera de correo, introduzca Content-Type: text/html para indicar que el contenido está en HTML para indicar que el correo viene en formato HTML. A continuación, el cliente de correo procesará el código HTML correctamente. También ayudará a incluir el enlace en un bloque <html></html> .

    Estoy enfrentando el mismo problema en el último i consiguió la solución. Puede compartir texto y vínculos

      String link_val = "http://play.google.com/store/apps/details?id=" + MainActivity.this.getPackageName(); String body = "<a href=\"" + link_val + "\">" + link_val + "</a>"; String data = "Hello I am using this App.\nIt has large numbers of Words meaning with synonyms.\nIts works offline very smoothly.\n\n" + body; sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml(data)); 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.