Autor Tema: Compartir contenido texto, multimedia en whatsapp con android intent ACTION_SEND  (Leído 3818 veces)

Tino

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 29
    • Ver Perfil
Hola. Trato de compartir informacion de una aplicacion a traves de Action Send. Solamente me da opcion de hacerlo a traves de correo electronico. Me gustaria que me diese opcion con whatsApp. El código es el siguiente:

Código: [Seleccionar]
case R.id.menu_contextual_compartir:
        editarPersona((int)info.id);
        String comp = extras.getString("dcompañero");
      String diaS =extras.getString("dseleccionado");
          String diaC = extras.getString("dcambio");
        String texto = "Hola "+comp+ " el cambio está hecho, tu me haces el "
        +diaS+ ", te lo devuelvo el "+diaC+". Un saludo." ;
        Intent sendIntent= new Intent();
        sendIntent.setAction(Intent.ACTION_SEND);
        sendIntent.putExtra(Intent.EXTRA_TEXT, texto);
        sendIntent.setType("Text/plain");
        startActivity(sendIntent);


En el manifest he colocado esto en la actyvity

Código: [Seleccionar]
<activity
            android:name="com.proyectosTino.mcalendar.ListaCambios"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.SEND" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="Text/plain"/>
            </intent-filter>
        </activity>
.

He probado la aplicacion en el movil y nada.

Por favor volverme a orientar. gracias
« Última modificación: 26 de Enero 2016, 09:37 por Alex Rodríguez »

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Hola habría varias maneras de hacerlo

Con un Custom URL Scheme si tienes un sitio web y quieres abrir una conversación de whastsapp con cierto mensaje pre-relleno bastaría abrir whatsapp://send?text=seguido del texto que quieres enviar por ejemplo

whatsapp://send?text=Recordar que hay una reunión esta noche a las nueve

Esto hará que se le abra whatsapp al usuario, que elija el contacto y que aparezca el texto ya relleno con el texto indicado

Con un Android intent system hay que crear un intent para compartir texto y se mostrará whatsapp como seleccionable para el usuario

Código: [Seleccionar]
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
sendIntent.setType("text/plain");
startActivity(sendIntent);

Si quieres saltarte que el usuario tenga que elegir basta añadir sendIntent.setPackage("com.whatsapp");
 antes de startActivity(sendIntent);

Esto también se puede usar para enviar elementos multimedia

Saludos

Tino

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 29
    • Ver Perfil
Hola Alex, muchisimas gracias por tu tiempo y dedicacion.
Si te das cuenta el codigo que me has sugerido es el mismo que yo he realizado . Pero al tratar de compartir (y estoy utilizando de emulador el movil) solo me sale gmail, drive, email y la propia aplicacion. No el whatsApp Creo que el filtro que he introducido en el Manifest esta bien. No se donde buscar solucion.
Gracias de nuevo. Un saludo

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".