web-dev-qa-db-fra.com

Lien de partage sur WhatsApp depuis le site Web mobile (pas l'application) pour Android

J'ai développé un site Web qui est principalement utilisé dans les téléphones mobiles.
Je veux permettre aux utilisateurs de partager des informations directement à partir de la page Web dans WhatsApp.

Utilisation de la détection UserAgent Je peux faire la distinction entre Android et iOS.
J'ai pu découvrir que pour implémenter ce qui précède dans iOS, je pouvais utiliser l'URL:

href="whatsapp://send?text=http://www.example.com"

Je cherche toujours la solution à utiliser lorsque le système d'exploitation est Android (car ce qui précède ne fonctionne pas).
Je suppose que c'est en quelque sorte lié à l'utilisation de "l'intention" dans Android, mais je ne savais pas comment le faire en tant que paramètre pour href.

166
Yochai

Je viens de le voir sur un site Web et semble fonctionner sur le dernier Android avec le dernier chrome et WhatsApp maintenant aussi! Donnez un nouveau coup au lien!

<a href="whatsapp://send?text=The text to share!" data-action="share/whatsapp/share">Share via Whatsapp</a>

Revérifié aujourd'hui (17th Avril 2015):
Fonctionne pour moi sur iOS 8 (iPhone 6, dernières versions) Android 5 (Nexus 5, dernières versions).

Cela fonctionne aussi sur Windows Phone.

269
Manuel

Les réponses ci-dessus sont un peu obsolètes. Bien que ces méthodes fonctionnent, mais en utilisant la méthode ci-dessous, vous pouvez partager du texte avec un nombre prédéfini. La méthode ci-dessous fonctionne pour Android, Web WhatsApp, IOS, etc.

Vous avez juste besoin d'utiliser ce format:

<a href="https://api.whatsapp.com/send?phone=whatsappphonenumber&text=urlencodedtext"></a>

UPDATE-- Utilisez ceci à partir de maintenant (Nov-2018)

<a href="https://wa.me/whatsappphonenumber/?text=urlencodedtext"></a>

Utilisez: https://wa.me/15551234567

Ne pas utiliser: https://wa.me/+001-(555)1234567

Pour créer votre propre lien avec un message pré-rempli qui sera apparaissent automatiquement dans le champ de texte d'une discussion, utilisez https://wa.me/whatsappphonenumber/?text=urlencodedtext where whatsappphonenumber est un numéro de téléphone complet au format international et URL-encodedtext est le message pré-rempli codé par URL.

Exemple: https://wa.me/15551234567?text=I 'm% 20interested% 20in% 20your% 20car% 20car% 20car% 20sale

Pour créer un lien avec juste un message pré-rempli, utilisez https://wa.me/?text=urlencodedtext

Exemple: https://wa.me/?text=I 'm% 20inquiring% 20about% 20le% 20apartment% 20listing

Après avoir cliqué sur le lien, une liste de contacts vous sera affichée peut envoyer votre message à.

Pour plus d'informations, voir https://www.whatsapp.com/faq/fr/general/26000030

67
ad08

Actuellement, il est très facile d'y parvenir. Il vous suffit d'ajouter le code suivant à vos pages:

<a href="whatsapp://send?text=<<HERE GOES THE URL ENCODED TEXT YOU WANT TO SHARE>>" data-action="share/whatsapp/share">Share via Whatsapp</a>

Et c'est tout. Pas de Javascript nécessaire, rien d'autre nécessaire. Bien sûr, vous pouvez le personnaliser à votre guise et inclure une icône Nice Whatsapp.

J'ai testé cela sur mon appareil Android avec Google Chrome. Les versions:

  • Android 4.1.2 (Jelly Bean)
  • Chrome Mobile 37.0.2062.117. Également testé sur Firefox Mobile 31.0.
  • Whatsapp V 2.11.399

Cela fonctionne aussi sur iOS. J'ai fait un test rapide sur un iPhone 5 avec Safari et cela fonctionne également.

J'espère que ça aide quelqu'un. :-)

38
juangalf

WhatsApp a récemment mis à jour sur son site officiel que nous devons utiliser cette balise HTML afin de pouvoir la partager avec les sites mobiles:

<a href="whatsapp://send?text=Hello%20World!">Hello, world!</a>

Vous pouvez remplacer text= pour avoir votre lien ou tout contenu textuel

13
Aadil Keshwani

Selon la nouvelle documentation, le lien est maintenant: 

<a href="https://wa.me/?text=urlencodedtext">Share this</a>
12
Vincent Decaux

Je crains que WhatsApp pour Android ne prenne pas en charge l'appel depuis un navigateur Web.

J'avais les mêmes exigences pour mon projet actuel et, comme je ne pouvais pas trouver les informations appropriées, j'ai fini par télécharger le fichier APK.

Sous Android, si une application souhaite être appelée à partir d'un navigateur Web, elle doit définir une activité avec la catégorie Android.intent.category.BROWSABLE.

Vous trouverez plus d'informations à ce sujet ici: https://developers.google.com/chrome/mobile/docs/intents

Si vous consultez le fichier WhatsApp AndroidManifest.xml, le seul Activiy de la catégorie BROWSABLE est celui-ci:

<activity Android:name="com.whatsapp.Conversation"   Android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" Android:windowSoftInputMode="stateUnchanged">
        <intent-filter>
            <action Android:name="Android.intent.action.SENDTO" />
            <category Android:name="Android.intent.category.DEFAULT" />
            <category Android:name="Android.intent.category.BROWSABLE" />
            <data Android:scheme="sms" />
            <data Android:scheme="smsto" />
        </intent-filter>
    </activity>

Je joue avec ça depuis un moment et je ne pouvais pas le faire fonctionner. Au mieux, j'ai ouvert l'application WhatsApp à partir de Chrome, mais je n'ai pas trouvé de moyen de définir le contenu et le destinataire du message. 

Comme cela n’est pas documenté par l’équipe de WhatsApp, je pense que c’est toujours un travail en cours. Il semble que dans le futur, WhatsApp gérera aussi SMS.

Le seul moyen d'obtenir plus d'informations est de contacter l'équipe de développement de WhatsApp, ce que j'ai essayé, mais j'attends toujours une réponse.

Cordialement!

7
oliferna

Je viens de tester le schéma whatsapp:// sur mon très vieux Android 2.3.3 avec Whats App 2.11.301, fonctionne comme un charme. Cela semble être juste la version Whats App. Puisque Whats App force tout le monde à mettre à jour, son utilisation devrait être sûre.

La documentation Whats App mentionne également ce schéma: http://www.whatsapp.com/faq/en/Android/28000012

J'utilise maintenant cela sur un site de production et le mettra à jour ici, si je reçois des plaintes d'utilisateurs.

Edit (14 nov): Pas de réclamation de l'utilisateur après quelques semaines.

7
JonasB

En général, il est logique d'afficher uniquement le lien Whatsapp Link sur des appareils iOS ou Android, à l'aide du script Java: 

   if (navigator.userAgent.match(/iPhone|Android/i)) {
      document.write('<a href="whatsapp://send?text=See..">Share on WhatApp</a>');
   }
6
Weidenrinde

DERNIÈRE MISE À JOUR

Maintenant, vous pouvez utiliser la dernière API de whatsapp https://wa.me/ sans vous soucier de l'agent utilisateur, l'API se chargera de la gestion de l'agent utilisateur.

Partager le texte prérempli avec l'option de sélection de contact dans le client WhatsApp correspondant (Android/iOS/Webapp):

https://wa.me/?text=urlencodedtext

Ouvrir la boîte de dialogue de discussion pour un utilisateur WhatsApp particulier dans le client WhatsApp correspondant (Android/iOS/Webapp):

https://wa.me/whatsappphonenumber

Partager un texte prérempli avec un utilisateur particulier (combiner les deux précédentes): 

https://wa.me/whatsappphonenumber/?text=urlencodedtext

Note: whatsappphonenumber devrait être un numéro de téléphone complet au format international. Omettez les zéros, les crochets et les tirets lorsque vous ajoutez le numéro de téléphone au format international.

Pour la documentation officielle, visitez https://faq.whatsapp.com/fr/general/26000030

3
Shri

TLDR: "Ceci n'est pas supporté." ~ Développeur officiel Whatsapp.

J'ai testé cela sur plusieurs appareils (Android, iOS et Windows) et cela ne fonctionne tout simplement pas. C’était un des 40 services différents que j’ai testé personnellement et le seul sur deux qui ne fonctionnait pas (l’autre étant Viber). Voir la liste ici ..

https://github.com/bradvin/social-share-urls#whatsapp

De frustration, j'ai envoyé un courrier électronique aux développeurs de WhatsApp. Je leur ai montré leur propre source:

https://faq.whatsapp.com/en/Android/26000030/?category=5245251

On m'a dit, très précisément, CETTE FONCTION IS N'EST PAS MISE EN ŒUVRE.

"Unfortunately, that is not supported at the moment.
We are always working to improve our app and will take your suggestion into consideration.
request #172349248330585"

Afin de tester ceci: (1) Inscrivez-vous pour un compte Whatsapp, (2) installez Whatsapp sur votre bureau, (3) installez Whatsapp sur votre téléphone, (4) Synchronisez votre téléphone et votre ordinateur, (5) Créez et téléchargez un whatsapp lien de partage sur votre hôte privé, (6) cliquez dessus dans les appareils mentionnés aux points 2 et 3. (7) Cliquez sur le lien, voyez que Whatsapp s'ouvre, voyez aussi qu'il ignore complètement tous les paramètres qui lui sont donnés.

Tous ces problèmes ont entraîné un échec pour Viber et Whatsapp, ainsi que des résultats positifs pour 38 autres services (de Google à Skype, en passant par Line.me, Facebook, Digg, StumbleUpon, Douban, etc.).

1
HoldOffHunger

Basculez les liens de partage WhatsApp en fonction de la plate-forme, qu'elle soit sur ordinateur ou sur mobile.

Cela fonctionne avec ou sans fournir le numéro de téléphone dans le lien.

pour mobile

   vm.LinkTextToShare = 'https://api.whatsapp.com/send?text=' + encodeURIComponent(window.location.href) ;

   window.open(vm.LinkTextToShare,"_blank");

Pour le burea

   vm.LinkTextToShare = 'https://web.whatsapp.com/send?l=en&text=' + encodeURIComponent(window.location.href) ;

   window.open(vm.LinkTextToShare,"_blank");
0
Sitaram

Essayez de le faire de cette façon:

<a href="https://wa.me/(phone)?text=(text URL encoded)">Link</a>

Même si vous pouvez envoyer des messages sans entrer le numéro de téléphone dans le lien:

<a href="https://wa.me/?text=Hello%20world!">Say hello</a>

Après avoir cliqué sur le lien, une liste de contacts auxquels vous pourrez envoyer votre message s'affichera.

Plus d'infos dans https://faq.whatsapp.com/fr/general/26000030 .

Bonne chance!

0
Gustavo Cantero

utilisez-le comme "whatsapp: // send? text =" + encodeURIComponent (votre texte va ici), cela fonctionnera certainement.

0