前端開發之調用原生打電話和發短信功能

        在開發過程當中遇到了這樣一個需求,就是須要在微信端公衆號網頁中加入打電話和發短信功能,因而查找了一些資料,經過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

相關文章
相關標籤/搜索