Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Tino en 24 de Enero 2016, 23:36
-
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:
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
<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
-
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
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
-
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