vue移动端H5调起手机发送短信(兼容ios和android)

移动端h6页面调起手机发送短信功能,ios和android的兼容写法不一样。

android

TypeScript 复制代码
window.location.href = `sms:10086?body=${encodeURIComponent('Hello, 测试短信发送')}`

ios

TypeScript 复制代码
window.location.href = `sms:10086&body=${encodeURIComponent('Hello, 测试短信发送')}`

//或者

window.location.href =`sms:/open?addresses=10086&body=${encodeURIComponent('Hello, 测试短信发送')}`;
html 复制代码
<template>
   <view @click="openNewSmsPage"></view>
</template>
TypeScript 复制代码
<script lang="ts" setup>
//点击唤起短信发送
const openNewSmsPage = () => {
  const phoneNumber = '10086' // 目标手机号码
  const message = 'Hello, 测试短信发送' // 短信内容
  let smsLink = ''
  const u = navigator.userAgent,
    isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1,
    isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
  if (isIOS) {
    // window.location.href = 'sms:10086&body=' + msg
    smsLink = `sms:${phoneNumber}&body=${encodeURIComponent(message)}`
    //或者
    smsLink = `sms:/open?addresses=${phoneNumber}&body=${encodeURIComponent(message)}`;
  } else {
    // sms:后面跟收件人的手机号,body后接短信内容
    smsLink = `sms:${phoneNumber}?body=${encodeURIComponent(message)}`
  }
  window.location.href = smsLink
}
</script>
相关推荐
你的眼睛會笑8 分钟前
uniapp 鸿蒙元服务 真机调试流程指南
华为·uni-app·harmonyos
excel1 小时前
HBuilderX 配置 adb.exe + 模拟器端口一体化完整指南
前端
拖拉斯旋风1 小时前
与 AI 协作的新范式:以文档为中心的开发实践
前端
dualven_in_csdn1 小时前
【electron】解决CS里的全屏问题
前端·javascript·electron
库克表示1 小时前
MessageChannel-通信机制
前端
拖拉斯旋风1 小时前
深入理解 Ajax:从原理到实战,附大厂高频面试题
前端·ajax
用户4099322502121 小时前
Vue 3响应式系统的底层机制:Proxy如何实现依赖追踪与自动更新?
前端·ai编程·trae
却尘1 小时前
一个"New Chat"按钮,为什么要重构整个架构?
前端·javascript·next.js
ERIC_s1 小时前
记一次 Next.js + K8s + CDN 缓存导致 RSC 泄漏的排查与修复
前端·react.js·程序员
168清纯女高1 小时前
路由动态Title实现说明(工作问题处理总结)
前端