收藏
回答

小程序中怎么调用原生短信功能来让用户发短信

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 需求 暂无 客户端 6.6.7 2.0.0

- 需求的场景描述(希望解决的问题)

现在有个这样的需求,业务中需要吊起用户对某个电话的发送短信功能,但是我看了小程序组件,并没有这种调用原生短信的api,我就想到了用web-view嵌入网页 再通过网页调用短信功能。

代码片段如下


这是我在web-view中嵌入的页面代码。可以通过'sms:xxxxxxx'这种方法 让浏览器调用起来短信功能,这是之前发现可以使用的,图中是可以吊起往10086发送哈哈的短信页面。这样问题就来了。

在web-view中是要在官方配一个域名的这个域名是用来嵌入web-view页面的,必须是https协议,这个我把这个简单的页面放到服务器上,确实可以使用,调用这句代码的时候ios会提示一个东西,点击确认就可以调用起来短信功能,但是安卓就会报错sms://不是在业务域名下,就出错,但是ios是可以的。具体截图如下


由于内容不方便暴露,就打了马赛克,但是确实是可以调用的,在安卓下面就会显示错误

- 希望提供的能力

希望安卓也兼容这种功能,或者是在api中添加调用原生的短信功能。确实有这方面需求


最后一次编辑于  2018-06-04  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 吃软饭.孙
    吃软饭.孙
    2018-06-04

    emmmm。这其实是微信的BUG。

    但是这个Bug不是指安卓下不能调用sms 协议。

    而是因为IOS的 webview 问题而无法屏蔽掉系统支持的 sms 协议。

    2018-06-04
    赞同 1
    回复 2
    • 老太头丶Lotatall
      老太头丶Lotatall
      2018-06-04

      这个需求有办法解决吗 这个路子 或者其他路子

      2018-06-04
      回复
    • 吃软饭.孙
      吃软饭.孙
      2018-06-04

      我没尝试过,如果web-view 能和小程序进行交互倒是可以调用小程序的 makeCallPhone

      2018-06-04
      1
      回复
  • 季夫子
    季夫子
    04-17

    20190417在红米中测试,使用体验版的包,配置webview,已经能够正常跳转发送短信页面了


    <a href="sms:18768116704&body=短信内容">发送iOS短信</a>

    <a href="sms:18768116704?body=短信内容">发送andorid短信</a>


    04-17
    赞同
    回复