移动端H5调起手机发送短信sms:短信内容被unicode编码,已解决!
网上的说法都是使用encodeURIComponent,但是汉字依然被编码。
function sendSMS() {
var smsLink = ‘sms:’ + phoneNumber + ‘?body=’+encodeURIComponent(‘【签名】 , 尊敬的’+yname+’先生/女士,您于’+ftime+’日在’+jname+’购买的**分期产品,共’+total+’期,总金额为’+amount+’元,本期为’+ctext+’,本期金额为’+money+’元,请在’+cdate+’日前还款,如已经还款请忽略。’);
window.location.href = smsLink;
}
大多数移动设备和应用在处理非ASCII字符时,会选择将它们编码为Unicode格式,以确保跨设备和平台的兼容性。因此,即使在H5页面中以汉字形式指定了短信内容,它们也很可能会在短信应用中被转换为Unicode编码。
最终我在‘【签名】’后面敲了个空格,就正常了,挺神奇,也算解决了问题,虽然不晓得什么原理,算是个小经验,希望能帮到有同样需求的朋友。