gpt4 book ai didi

javascript - 在最新的 iOS 更新到 12.2 后,如何修复 iOS 主屏幕 Chrome 快捷方式中的 "whatsapp://"协议(protocol)点击中断?

转载 作者:行者123 更新时间:2023-12-03 12:47:35 24 4
gpt4 key购买 nike

以前/工作状态:

Javascript 从 HTML 表单中获取一些简单的日期/时间值并设置字符串 "whatsapp://send?text="+encodeURIComponet(str)作为 a 的 href元素。

在 iOS 上,我在 Safari 上打开链接,选择书签 -> 添加到主屏幕。一切正常,即按下“Go”,javascript 运行,获取值,生成字符串,然后 Safari 自动重定向到 Whatsapp 应用程序,其中包含可供选择消息的联系人列表,以及如果手动单击则共享链接有效。

href.value = whatsapp://send?text=Apr-21%3A%20Dav%20OUT%20at%2007%3A19pm

三天前我将 iPhone 8 更新到最新的 iOS 12.2 后:

相同的设置,但现在在单击“开始”按钮后,Safari 会在地址/状态栏中显示以下 URL,并显示一个显示

的白页
Safari cannot open the page because it
cannot redirect to locations starting
with "whatsapp:"

手动点击和 element.click() 都会给出上述错误。 iOS Chrome 或 iOS Safari 浏览器中的所有内容都按预期工作,但仅在从“添加到主屏幕应用程序”中使用时才会出错。

我的代码

HTML

<form>
<label for="date">Date</label><input id="date" name="date" type="date" required>
<label for="what">In/Out</label>
<select id="what" name="what" required>
<option value="tIn">IN</option>
<option value="tOut">OUT</option>
</select>
<label for="when">Time</label>
<input id="when" name="when" type="time" step=60 required><!-- step=60 will show only HH:MM -->
<input type="submit" onClick="process()" value="Go">
<a id="share">Share</a>

JS

function process(){
var date = document.getElementById("date").value;
var what = document.getElementById("what").value;
var when = document.getElementById("when").value;
var waStr = waFormat(date,what,when);

var share = document.getElementById("share");
share.href = "whatsapp://send?text=" + encodeURIComponent(waStr);
share.click();
}

//return string for whatsapp link
function waFormat(waDate,waWhat,waWhen){
var sp = " ";
waDate = waDate.split("-");
var mon = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
waDate = mon[(waDate[1]-1)] + "-" + waDate[2];
waWhat = (waWhat == "tIn") ? "IN" : "OUT";
waWhen = waWhen.split(":");
var apm = "am";
if(waWhen[0]>12){
waWhen[0] = waWhen[0]-12;
apm = "pm";
}
waWhen = ("0" + waWhen[0]).slice(-2) + ":" + waWhen[1] + apm;
return waDate + ": "+ waWhat + sp + "at" + sp + waWhen;
}

我在 encode()/encodeURI()/encodeURIComponent 之间切换,但没有用。

请帮忙。 whatsapp://在 HomeScreen Safari 应用程序中不起作用的问题在哪里?我可以使用 https://wa.me链接,但还想知道 whatsapp://是否已停止工作?

从 Safari/Any 打开同一页面时有效,从 iOS 中的 HomeScreen App 打开时无效

最佳答案

我也遇到过这个问题。对于我来说,它可以摆脱 url 方案 whatsapp:// 并使用以下指南 https://faq.whatsapp.com/en/android/26000030/

To create your own link with a pre-filled message that will automatically appear in the text field of a chat, use https://wa.me/whatsappphonenumber/?text=urlencodedtext where whatsappphonenumber is a full phone number in international format and URL-encodedtext is the URL-encoded pre-filled message.

Example: https://wa.me/15551234567?text=I'm%20interested%20in%20your%20car%20for%20sale

To create a link with just a pre-filled message, use https://wa.me/?text=urlencodedtext

Example: https://wa.me/?text=I'm%20inquiring%20about%20the%20apartment%20listing

After clicking on the link, you will be shown a list of contacts you can send your message to.

关于javascript - 在最新的 iOS 更新到 12.2 后,如何修复 iOS 主屏幕 Chrome 快捷方式中的 "whatsapp://"协议(protocol)点击中断?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55803644/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com