我开发了一个网站,主要用在手机上。 我想让用户直接从网页分享信息到WhatsApp。
使用UserAgent检测,我可以区分Android和iOS。 我发现,为了在iOS中实现上述功能,我可以使用URL:
href="whatsapp://send?text=http://www.example.com"
我仍然在寻找当操作系统是Android时使用的解决方案(因为上面的不工作)。 我猜这在某种程度上与在Android中使用“意图”有关,但我不知道如何将其作为href的参数。
我开发了一个网站,主要用在手机上。 我想让用户直接从网页分享信息到WhatsApp。
使用UserAgent检测,我可以区分Android和iOS。 我发现,为了在iOS中实现上述功能,我可以使用URL:
href="whatsapp://send?text=http://www.example.com"
我仍然在寻找当操作系统是Android时使用的解决方案(因为上面的不工作)。 我猜这在某种程度上与在Android中使用“意图”有关,但我不知道如何将其作为href的参数。
当前回答
恐怕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的开发团队,我试过了,但我仍在等待回复。
的问候!
其他回答
目前,这很容易实现。你只需要添加以下代码到你的页面:
<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上做了一个快速测试,效果也很好。
希望这能帮助到一些人。: -)
恐怕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的开发团队,我试过了,但我仍在等待回复。
的问候!
最新更新
现在您可以使用来自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://send?”text=" + encodeURIComponent(你的文本在这里),它肯定会工作。
一般来说,只在iOS或Android设备上使用java脚本显示Whatsapp Link是有意义的:
if (navigator.userAgent.match(/iPhone|Android/i)) {
document.write('<a href="whatsapp://send?text=See..">Share on WhatApp</a>');
}