我开发了一个网站,主要用在手机上。 我想让用户直接从网页分享信息到WhatsApp。

使用UserAgent检测,我可以区分Android和iOS。 我发现,为了在iOS中实现上述功能,我可以使用URL:

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

我仍然在寻找当操作系统是Android时使用的解决方案(因为上面的不工作)。 我猜这在某种程度上与在Android中使用“意图”有关,但我不知道如何将其作为href的参数。


当前回答

目前,这很容易实现。你只需要添加以下代码到你的页面:

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

就是这样。不需要Javascript,不需要其他任何东西。当然,你可以根据自己的喜好来设置样式,并添加一个漂亮的Whatsapp图标。

我用谷歌Chrome浏览器在我的Android设备上测试了这个功能。版本:

Android 4.1.2(果冻豆) Chrome Mobile 37.0.2062.117。也在Firefox Mobile 31.0上进行了测试。 Whatsapp V 2.11.399

它也适用于iOS。我用Safari在iPhone 5上做了一个快速测试,效果也很好。

希望这能帮助到一些人。: -)

其他回答

最近WhatsApp在官网上更新了我们需要使用的内容 这个HTML标签,以使其可共享到移动网站:

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

您可以替换text=来拥有您的链接或任何文本内容

恐怕Android版WhatsApp目前不支持从web浏览器调用。

我现在的项目也有同样的要求,因为我找不到任何合适的信息,所以我最终下载了APK文件。

在Android中,如果一个应用程序想要从web浏览器中被调用,它需要定义一个带有类别Android .intent.category. browsable的Activity。

你可以在这里找到更多信息:https://developers.google.com/chrome/mobile/docs/intents

如果你看一下WhatsApp的AndroidManifest.xml文件,唯一的活动类别BROWSABLE是这个:

<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>

我已经玩了一段时间了,但我不能让它工作。我最多只能从Chrome浏览器打开WhatsApp应用程序,但我不知道如何设置消息内容和收件人。

由于WhatsApp团队没有记录,我认为这项工作仍在进行中。看起来未来WhatsApp也会提供短信服务。

获得更多信息的唯一方法是联系WhatsApp的开发团队,我试过了,但我仍在等待回复。

的问候!

使用:https://wa.me/1XXXXXXXXXX 不要使用:https://wa.me/+001-(XXX)XXXXXXX

预先填写的消息将自动出现在聊天的文本框中。使用https://wa.me/whatsappphonenumber?text=urlencodedtext,其中whatsappphonenumber是国际格式的完整电话号码,urlencodedtext是url编码的预填充消息。

例子: https://wa.me/1XXXXXXXXXX?text=I是% 20感兴趣% 20 % 20你% 20辆车% 20 % 20出售

要创建只包含预填充消息的链接,请使用https://wa.me/?text=urlencodedtext

例子: https://wa.me/?text=I是% 20的% 20约% 20 % 20公寓% 20清单”

点击链接后,你会看到一个联系人列表,你可以将消息发送给这些联系人。

最新更新

现在您可以使用来自whatsapp https://wa.me/的最新API,而无需担心用户代理,API将执行用户代理处理。

在各自的whatsapp客户端(Android / iOS / Webapp)中共享带有联系人选择选项的预填充文本:

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

在各自的whatsapp客户端(Android / iOS / Webapp)中打开特定whatsapp用户的聊天对话框:

https://wa.me/whatsappphonenumber

与特定用户共享预填充文本(结合以上两个):

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

注意:whatsappphonenumber应该是国际格式的完整电话号码。在添加国际格式的电话号码时,请省略任何零、括号或破折号。

官方文件请访问https://faq.whatsapp.com/en/general/26000030

根据桌面或移动平台切换whatsapp分享链接。

在链接中提供电话号码或不提供电话号码都可以。

为移动

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

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

对于桌面

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

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