首页 文章

在Android上的移动网站(非应用程序)上分享WhatsApp上的链接

提问于
浏览
153

我开发了一个主要用于手机的网站 .
我想允许用户直接从网页共享信息到WhatsApp .

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

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

我'm still looking for the solution to be used when the OS is Android (as the above doesn'工作) .
我想它在某种程度上与在Android中使用"intent"相关,但我无法弄清楚如何将其作为href的参数 .

11 回答

  • 7

    最近WhatsApp在其official website上更新了我们需要使用此HTML标记,以使其可共享到移动网站:

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

    您可以将 text= 替换为您的链接或任何文本内容

  • 13

    TLDR:“这不受支持 . ” 〜官方Whatsapp开发者 .

    我在几个设备(Android,iOS和Windows)上对此进行了测试,但它根本不起作用 . 这是我个人测试的40种不同服务中的一种,而且两种中唯一一种不起作用(另一种是Viber) . 请看这里的列表..

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

    令人沮丧的是,我通过电子邮件发送了WhatsApp的开发人员 . 我向他们展示了自己的来源:

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

    有人告诉我,非常具体,这个功能没有实现 .

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

    为了测试这个:(1)注册Whatsapp帐户,(2)在桌面上安装Whatsapp,(3)在手机上安装Whatsapp,(4)同步你的手机和电脑,(5)构建并上传一个whatsapp在您的私人主机上共享链接,(6)在2和3中提到的设备中单击它 . (7)单击链接,看到Whatsapp打开,还要看它完全忽略了给它的所有参数 .

    所有这些都导致了Viber和Whatsapp的失败,以及38个其他服务的积极结果(从谷歌到Skype到Line.me到Facebook,Digg,StumbleUpon, beans 瓣,你的名字) .

  • 6

    刚刚在网站上看到它,似乎现在也可以使用最新的Chrome和whatsapp在最新的Android上运行!给链接一个新的镜头!

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

    今天(2015年4月17日)重新检查:
    适用于iOS 8(iPhone 6,最新版本)Android 5(Nexus 5,最新版本) .

    它也适用于Windows Phone .

  • 7

    试着这样做:

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

    即使您可以在不输入链接中的电话号码的情况下发送消息:

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

    点击该链接后,您将看到一个可以发送邮件的联系人列表 .

    更多信息在https://faq.whatsapp.com/en/general/26000030 .

    祝好运!

  • 0

    根据新文档,链接现在是:

    <a href="https://wa.me/?text=urlencodedtext">Share this</a>
    
  • 0

    刚刚使用 Whats App 2.11.301 在我的超级旧版 Android 2.3.3 上测试了 whatsapp:// 方案,就像一个魅力 . 它似乎只是 Whats App 版本 . 由于 Whats App 强制每个人都要更新,因此使用它应该是安全的 .

    Whats App 文件还提到了该计划:http://www.whatsapp.com/faq/en/android/28000012

    我现在在 生产环境 网站上使用它,如果我收到任何用户投诉,将在此处更新 .

    Edit (Nov 14): 几周后没有用户投诉 .

  • 37

    目前,实现这一目标非常容易 . 您只需要将以下代码添加到您的页面:

    <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图标 .

    我在Android设备上使用Google Chrome进行了测试 . 版本:

    • Android 4.1.2(Jelly Bean)

    • Chrome Mobile 37.0.2062.117 . 也在Firefox Mobile 31.0上测试过 .

    • Whatsapp V 2.11.399

    它也适用于iOS . 我已经使用Safari对iPhone 5进行了快速测试,它也能正常运行 .

    希望这有助于某人 . :-)

  • 254

    LATEST UPDATE

    现在您可以使用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
    

    Notewhatsappphonenumber 应为国际格式的完整电话号码 . 以国际格式添加电话号码时,请忽略任何零,括号或短划线 .

    有关官方文档,请访问https://faq.whatsapp.com/en/general/26000030

  • 0

    上面的答案有点过时了 . 虽然这些方法有效,但通过使用以下方法,您可以将任何文本共享到预定义的数字 . 以下方法适用于android,WhatsApp web,IOS等 .

    你只需要使用这种格式:

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

    更新 - 从现在开始使用(2018年11月)

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

    使用:https://wa.me/15551234567请勿使用:https://wa.me/ 001-(555)1234567使用预先填写的消息创建自己的链接,该消息将自动显示在文本字段中聊天,请使用https://wa.me/whatsappphonenumber/?text=urlencodedtext,其中whatsappphonenumber是国际格式的完整电话号码,URL-encodedtext是URL编码的预填充消息 . 示例:https://wa.me/15551234567?text =我是%20兴趣%20in%20your%20car%20for%20sale创建链接只是一个预先填好的消息,请使用https://wa.me/?text=urlencodedtext示例:https://wa.me/?text =我是%20inquiring%20about%20%20apartment%20listing点击后链接,您将看到一个可以发送消息的联系人列表 .

    有关更多信息,请参阅https://www.whatsapp.com/faq/en/general/26000030

  • 52

    我担心WhatsApp for Android目前不支持从网络浏览器调用 .

    我对我当前的项目有同样的要求,由于我找不到任何正确的信息,我最终下载了APK文件 .

    在Android中,如果想要从Web浏览器调用应用程序,则需要使用android.intent.category.BROWSABLE类别定义Activity .

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

    如果您查看WhatsApp AndroidManifest.xml文件,那么唯一一个类别为BROWSABLE的Activiy就是这个:

    <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开发团队,我尝试过,但我仍在等待回应 .

    问候!

  • 9

    一般来说,仅使用java脚本在iOS或Android设备上显示Whatsapp链接才有意义:

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

相关问题