- 需求的场景描述(希望解决的问题)
现在有个这样的需求,业务中需要吊起用户对某个电话的发送短信功能,但是我看了小程序组件,并没有这种调用原生短信的api,我就想到了用web-view嵌入网页 再通过网页调用短信功能。
代码片段如下
这是我在web-view中嵌入的页面代码。可以通过'sms:xxxxxxx'这种方法 让浏览器调用起来短信功能,这是之前发现可以使用的,图中是可以吊起往10086发送哈哈的短信页面。这样问题就来了。
在web-view中是要在官方配一个域名的这个域名是用来嵌入web-view页面的,必须是https协议,这个我把这个简单的页面放到服务器上,确实可以使用,调用这句代码的时候ios会提示一个东西,点击确认就可以调用起来短信功能,但是安卓就会报错sms://不是在业务域名下,就出错,但是ios是可以的。具体截图如下
由于内容不方便暴露,就打了马赛克,但是确实是可以调用的,在安卓下面就会显示错误
- 希望提供的能力
希望安卓也兼容这种功能,或者是在api中添加调用原生的短信功能。确实有这方面需求
emmmm。这其实是微信的BUG。
但是这个Bug不是指安卓下不能调用sms 协议。
而是因为IOS的 webview 问题而无法屏蔽掉系统支持的 sms 协议。
这个需求有办法解决吗 这个路子 或者其他路子
我没尝试过,如果web-view 能和小程序进行交互倒是可以调用小程序的 makeCallPhone
20190417在红米中测试,使用体验版的包,配置webview,已经能够正常跳转发送短信页面了
<a href="sms:18768116704&body=短信内容">发送iOS短信</a>
<a href="sms:18768116704?body=短信内容">发送andorid短信</a>