前端开发之调用原生打电话和发短信功能

        在开发过程当中遇到了这样一个需求,就是须要在微信端公众号网页中加入打电话和发短信功能,因而查找了一些资料,经过js访问不一样的url来达到目的。浏览器

        如下全部的结果都是在微信浏览器环境中执行的,本人手机iPhone7,系统iOS11.0.2。安全

        首先说打电话,在js中经过a标签的方法或者是window.location.href的方法跳转连接便可完成打电话功能。具体的url是"tel:"+phone 例如:window.location.href = "tel:13800000000",这就完成了对某个电话进行拨打,可是在微信中是有提示的 “肯定拨打电话13800000000?”点击肯定会出现一个呼叫13800000000的弹框也就是说两次确认。才会拨打电话。在安卓中是会触发一个菜单,这个就跟手机牌子型号有关系了。总之这个方法是可行的。微信

        再说发短信,在js中打电话和发短信的解决方法是差很少的,也是经过访问特殊连接的方法。具体的url是“sms:”+phone+"&body="+text 例如:window.location.href = "sms:13800000000&body=你好",这就完成了对某个手机进行发送短信,是跳到发送短信的页面须要你点击发送才能够发过去可是注意,安卓和iOS在发短信的url有些差别,上述的例子是iOS版。安卓的须要把“&”改为“?”即变成“sms:13800000000?body=你好”。同理,因为iOS的安全性考虑,会有提示,提示内容目前不知道怎么修改,就很不符合常规,会把,若是有高玩知道怎么修改也能够发表见解。感激涕零。测试

        最后说一下在这个执行时候遇到的bug,因为个人系统是iOS11.0.2。因此在发短信的时候出现了这样一个bug,就是你若是不打开短信这个功能的时候,点击他会自动跳到短信页面可是电话和内容都没有初始化,多是这个版本系统的问题,但若是你的短信是在后台跑着的话就能够初始化到发信息页面,电话和内容都已经准备完毕。因此在这个系统版本我试了一下在苹果原生的通信录中对某人点击发短信,也会出现这样的状况,基本能够肯定这应该算是个iOS系统的bug。不过不影响大局,再次重申,以上的测试都是在微信浏览器中运行的,若是有码友有兴趣,能够测一测这个代码的兼容性。但愿能够帮到须要的人,也但愿本小白说的有问题的话指出来,虚心接受。url

相关文章
相关标签/搜索