Comment partager du texte avec WhatsApp à partir de mon application?
je développe une application avec des fonctionnalités de partage de texte. Ça marche très bien, sauf pour WhatsApp. Que dois-je faire? Y a-t-il une API spécifique pour cela?
9 réponses
Il n'y a pas de public officielle de l'api pour whats app....Donc, il n'est pas possible maintenant.
Vous pouvez utiliser l'intention de le faire. Pas besoin d'utiliser Whatsapp API. Espérons que je n'ai pas mal compris votre question. Espère que ça aide, merci.
Intent whatsappIntent = new Intent(Intent.ACTION_SEND);
whatsappIntent.setType("text/plain");
whatsappIntent.setPackage("com.whatsapp");
whatsappIntent.putExtra(Intent.EXTRA_TEXT, "The text you wanted to share");
try {
activity.startActivity(whatsappIntent);
} catch (android.content.ActivityNotFoundException ex) {
ToastHelper.MakeShortText("Whatsapp have not been installed.");
}
il y a deux façons de s'intégrer avec WhatsApp:
-
à travers un schéma D'URL personnalisé
-
via le système d'intentions D'Android.
si vous avez un site web et que vous souhaitez ouvrir un chat WhatsApp avec un message pré-rempli, vous pouvez utiliser notre schéma D'URL personnalisé pour le faire. L'ouverture de whatsapp://envoyer?text= suivi du texte à envoyer, va ouvrir WhatsApp, permet le l'utilisateur doit choisir un contact, et pré-remplir le champ d'entrée avec le texte spécifié.
comme la plupart des applications sociales sur Android, WhatsApp écoute à l'intention de partager des médias et du texte. Il suffit de créer une intention de partager du texte, par exemple, et WhatsApp sera affiché par le sélectionneur de système:
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);
cependant, si vous préférez partager directement avec WhatsApp et contourner le capteur de système, vous pouvez le faire en utilisant setPackage dans votre intention:
sendIntent.setPackage("com.whatsapp");
cela serait tout simplement réglé juste avant que vous appeliez startActivity (sendIntent);
, Veuillez consulter ci-dessous le lien Officiel de WhatsApp Page: https://www.whatsapp.com/faq/en/android/28000012 ,
si vous voulez partager du texte avec un contact spécifique de WhatsApp, veuillez vous référer au code ci-dessous.
private void openWhatsApp() {
String smsNumber = "7****"; //without '+'
try {
Intent sendIntent = new Intent("android.intent.action.MAIN");
//sendIntent.setComponent(new ComponentName("com.whatsapp", "com.whatsapp.Conversation"));
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.setType("text/plain");
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
sendIntent.putExtra("jid", smsNumber + "@s.whatsapp.net"); //phone number without "+" prefix
sendIntent.setPackage("com.whatsapp");
startActivity(sendIntent);
} catch(Exception e) {
Toast.makeText(this, "Error/n" + e.toString(), Toast.LENGTH_SHORT).show();
}
}
pour plus de détails, veuillez consulter le lien ci-dessous. envoyer le texte à un contact spécifique (whatsapp)
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("text/plain");
share.putExtra(Intent.EXTRA_TEXT, "Your text");
startActivity(Intent.createChooser(share, "Share using"));
Je ne suis pas sûr à 100%...mais je crains qu'il n'y ait pas D'API officielle. Je voulais aussi mettre en œuvre une fonctionnalité "envoyez-nous un whatsapp", mais j'abandonne pour un moment jusqu'à whatsapp.inc libération d'un officiel
il y a certaines API non-officielles, mais je ne sais pas si vous voulez cela...
http://www.whatsapp-api.com/developers.php
https://github.com/venomous0x/WhatsAPI
bonne chance....et si vous découvrez quelque chose, s'il vous plaît laissez-moi savoir ;)
vous pouvez utiliser L'API WhatsApp Android: http://www.whatsapp.com/faq/en/android/28000012 iOS: http://www.whatsapp.com/faq/en/iphone/23559013
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send.");
sendIntent.setType("text/plain");
sendIntent.setPackage("com.whatsapp");
startActivity(sendIntent);
si le périphérique de l'utilisateur n'a pas L'application Whatsapp alors vous avez le ActivityNotFoundException
si l'utilisateur n'a pas l'application whatsapp dans son appareil, alors je pensez que vous devez faire le déplacement de l'utilisateur vers le téléchargement whatsapp à partir de jouer magasin
public void shareViaWhatsApp() {
Intent whatsappIntent = new Intent(Intent.ACTION_SEND);
whatsappIntent.setType("text/plain");
whatsappIntent.setPackage("com.whatsapp");
whatsappIntent.putExtra(Intent.EXTRA_TEXT, "Application of social rating share with your friend");
try {
Objects.requireNonNull(getActivity()).startActivity(whatsappIntent);
} catch (android.content.ActivityNotFoundException ex) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=com.whatsapp")));
}
}
message = "this msg is sent from My App Time Track"
val intent = Intent()//Empty as we don't know the destination i.e implicit intent
intent.action = Intent.ACTION_SEND//intent will do work of sending something
intent.putExtra(Intent.EXTRA_TEXT, message)//send given message
intent.putExtra(Intent.EXTRA_SUBJECT,"Download Time Track App")//give the subject for your message
//Intent.Extra_Text is actually a globol key
intent.type = "plane/text"//type of intent
startActivity(Intent.createChooser(intent,"Send to: "))//createChooser is a dialogBox which shows app available to send data