ios 是否可以使用SMS:URL来预填充消息体但没有收件人?

wqlqzqxt  于 2023-05-19  发布在  iOS
关注(0)|答案(2)|浏览(194)

我想使用Javascript创建一个“通过短信分享”按钮,该按钮将打开用户的消息应用程序(例如,在iOS或Android上),其中正文已预填充,但收件人留空。关于使用什么URL方案,以及是否可能,有很多相互矛盾的信息。
我一直在我的Mac上测试这个,还没有能够让它完全工作。我尝试过的:
这将打开一个新选项卡,并提示您打开消息应用程序,但在我允许时不会执行任何操作:

window.open('sms:&body=text')

这将打开消息应用程序,其中“文本”正确填写在正文中,但“?“作为收件人:

window.open('sms:?&body=text')

这将打开消息应用程序,并将“文本”填写为收件人:

window.open('sms:;body=text')

我发现一些帖子表明这曾经是可能的(例如,http://blog.julianklotz.de/the-sms-uri-scheme/),但我怀疑它不再是。有谁能证实这一点,或者如果可能的话,让我知道正确的语法是什么?

k0pti3hp

k0pti3hp1#

已确认此操作有效:

<div onClick="window.open('sms://+19999999999?body=I%27m%20Some%20Test%20Text%20For%20Your%20A%20Tag')">
    SEND SMS
</div>

你的格式有点不对。请记住,您将需要进行URL编码。所以像空格这样的东西变成了%20,像单引号这样的东西变成了%27等等

CONVERSELY-您也可以将其放入<a>标记中。就像

<a href="sms://+19999999999?body=I%27m%20Some%20Test%20Text%20For%20Your%20A%20Tag">Send SMS</a>

它也会以同样的方式运作…

更新--这将打开短信应用程序询问收件人并预先填写文本--

<a href="sms://?body=I%27m%20Some%20Test%20Text%20For%20Your%20A%20Tag">Send SMS</a>

<div onClick="window.open('sms://?body=I%27m%20Some%20Test%20Text%20For%20Your%20A%20Tag')">
    SEND SMS
</div>
kgsdhlau

kgsdhlau2#

我想分享我通过阅读这篇文章找到的解决方案:
https://jsmobiledev.com/article/sms-link/
在html标签或JS方法中要添加的一件事是在'?’如下所示。我测试了这一点,并在尝试了以前的方法,它现在是工作

window.open("sms://?&body=hey%20there");

相关问题