有同学在群里咨询,想通过短信精准营销,实现用户收到短信后,点击打开短信链接就自动调起微信小程序或APP,请问丁老师这个可以实现吗?该如何实现呢?今天丁老师对这个问题进行解答。
短信链接打开微信小程序和APP的原理
通过群发短信,然后用户点击短信链接,就可以打开微信小程序或者APP,这种方式其实实现起来很简单。
1.原理是在短信中添加一个url网址,最好是短网址,不要太长。
2.这个网址打开后是一个静态的html页面,这个页面包含可以打开微信小程序或者APP的代码。
3.这个网址的网页可以进行UI设计,也可以不设计。设计美化后的网页可以做成类似拼多多的那种,引导用户手动打开微信小程序或APP。也可以不设计,直接自动触发代码调用打开微信小程序或APP。
短信链接打开微信小程序的方法
1.通过微信的Url Scheme实现。Url Scheme是一种专属的url格式,可以用来唤醒小程序。这个url需要服务端调用微信接口生成,也可以直接在小程序管理后台生成。生成后访问这个链接即可打开小程序。
2.通过Url Link实现,Url Link就是普通的url网址,由微信服务端生成的Url Link,也可以用来唤醒小程序。这个url link也需要服务端调用微信接口生成,生成后访问这个链接即可打开小程序。
3.在生成以上两个链接后,可以将短信中的短网址链接,自动跳转到url scheme或url link,也可以在打开短网址链接后,自动触发这两个url,以实现微信小程序的调用打开。
短信链接打开APP的方法
1.短信跳转的网址,增加a链接,引导用户点击,a链接的href中需要填写这个app的url scheme信息,比如
#该链接会打开淘宝,并传递id为123456的值过去
<a href="taobao://item?id=123456"></a>2.短信跳转的网址,通过JS代码判断,如果本地已安装APP就自动打开,如果没有安装就引导下载安装。
<button id="openOrInstallApp">打开/安装我的App</button>
<script>
//配置项(根据自己的App修改)
const APP_CONFIG = {
//Android Scheme
androidScheme: 'myapp://page/home',
//iOS Scheme
iosScheme: 'myapp://page/home',
//iOS Universal Link(可选,无则用Scheme)
iosUniversalLink: 'https://your-domain.com/open/app',
//应用商店链接
//iOS App Store地址
appStoreUrl: 'https://apps.apple.com/cn/app/xxx/id123456789',
//腾讯应用宝地址
androidStoreUrl: 'https://a.app.qq.com/o/simple.jsp?pkgname=com.xxx.xxx',
//自定义下载地址
fallbackUrl: 'https://www.xxx.com/app/download'
};
//判断设备类型
function getDeviceType(){
const ua = navigator.userAgent.toLowerCase();
if (ua.includes('iphone') || ua.includes('ipad')) return 'ios';
if (ua.includes('android')) return 'android';
return 'other';
}
//唤起App核心方法
async function openApp(){
const device = getDeviceType();
let isAppOpened = false;
//监听页面隐藏事件
const onPageHidden = () =>{
isAppOpened = true;
//移除监听,避免重复触发
document.removeEventListener('visibilitychange', onPageHidden);
window.removeEventListener('pagehide', onPageHidden);
};
document.addEventListener('visibilitychange', onPageHidden);
window.addEventListener('pagehide', onPageHidden);
try {
if (device === 'ios' && APP_CONFIG.iosUniversalLink) {
//1.iOS优先用Universal Link(无拦截)
window.location.href = APP_CONFIG.iosUniversalLink;
}
else {
//2.用Scheme唤起
const scheme = device === 'ios' ? APP_CONFIG.iosScheme : APP_CONFIG.androidScheme;
//创建隐藏iframe触发Scheme
const iframe = document.createElement('iframe');
iframe.style.display = 'none';
iframe.src = scheme;
document.body.appendChild(iframe);
setTimeout(() => document.body.removeChild(iframe), 2000);
//同时直接跳转Scheme
window.location.href = scheme;
}
//3. 延迟检测,未唤起则跳转安装页
setTimeout(() =>{
if (!isAppOpened){
let installUrl = APP_CONFIG.fallbackUrl;
if (device === 'ios') installUrl = APP_CONFIG.appStoreUrl;
if (device === 'android') installUrl = APP_CONFIG.androidStoreUrl;
window.location.href = installUrl;
}
}, 1800);
}
catch (e) {
//异常时直接跳转兜底页
window.location.href = APP_CONFIG.fallbackUrl;
}
}
// 绑定按钮点击事件
document.getElementById('openOrInstallApp').addEventListener('click', openApp);
</script>备注
以上方式不仅可以实现从短信中调用打开微信小程序、APP,也可以将此方法应用到电子邮件、二维码等营销网页中,只要引导用户访问URL网页,最终都可以实现调用打开微信小程序和APP。
在网页中读取和显示PDF文件,可以使用Iframe加载,只需要在iframe的src中设置pdf地址即可,如:<iframe src="pdf地址" </iframe 通过iframe加载pdf,不但可以...
一、wordpress安装系统配置要求1.PHP7.4以上版本。2.Mysql5.7或MariaDB10.3以上版本。3.Nginx或开启mod_rewrite模块的Apache底座。4.需要支持HTTPS的SSL证书。二、创建数据库1...
开发抖音小程序所需资料及费用概览随着短视频平台抖音(TikTok)在全球范围内的迅速崛起,越来越多的企业和个人开始意识到在抖音平台上开发小程序的重要性。抖音小程序不仅可以增强品牌曝光率,还能为用户提供更加便捷的服务体验。那么问题来了,开...
最近在使用IntelliJIDEA开发时,突然发现有个文件,图标显示问号,这个文件也无法打开,无法编辑,是怎么回事呢?如图:经过研究发现,这是IDE无法判断此文件类型,从而将此文件根据文件内容设置为了未知类型,所以就无法打开。那么要解决...
在使用wordpress的过程中,有的时候部分页面打不开,或是程序不能正常使用,也没有显示具体的错误信息,这个时候该怎么办呢?首先是查看错误日志,可以查看wordpress本身的错误日志,以及php的错误日志。这时有朋友提问了,wordpr...
二维码码有三个参数:数据类型、大小(“像素”数)和纠错级别。能存储多少信息也取决于这些参数。例如,纠错级别越低,可存储的信息越多,但代码越难被读者识别。最大尺寸和最小纠错值如下:最大字符数7089个字符(纯数字)字母数字4296个字符(字母...
windows11更新后,不管是桌面的右键,还是文件上点右键,都非常地别扭,而且也非常的卡顿。在网上找了一堆方法,都不管用,经过不懈努力,终于找到了真正能恢复经典版右键的方法。废话不多说,具体方法如下:1.以管理员方式运行CMD打开后,在C...
挺不错的浏览器,强加入了edgeimageviewer图片浏览器,感觉不是那么好,对于开发者来说,更想要原生的东西。包括微信网页版里的表情图片,用edgeimageviewer打开的话,无法保存为gif格式,即使保存了,也只是第一帧静态的。...