JS判断手机是否安装并打开App,未安装则跳转下载(兼容Android、iOS)
作者:拾光时间:2026-10-30 19:18:09浏览:584
本文提供亲测可用的JavaScript代码,用于在H5页面中判断用户手机是否安装指定App。若已安装则直接唤起,未安装则跳转至应用商店或下载页。代码兼容Android与iOS系统,并特别处理了微信浏览器内的特殊场景,确保链接分享后能正确引导用户操作。
在移动应用开发场景中,经常需要将App内的分享链接发送给好友,接收方点击链接后进入的是H5页面。此时,页面需要自动检测用户设备是否已安装对应的App:若已安装,则直接启动应用;若未安装,则引导用户前往下载。网络上现有的教程代码风格各异且往往难以直接复用,本文提供一套经过实际测试可用的代码方案,旨在帮助开发者提升开发效率。
function openApp(){
var ua = window.navigator.userAgent.toLowerCase();
//微信
if(ua.match(/MicroMessenger/i) == 'micromessenger'){
window.location.href='****';//这个地方老七直接用的应用宝下载链接
}else{//非微信浏览器
if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {
window.location = 'dslangya://';
var ifr = document.createElement("iframe");
ifr.src = "*****://"; /***打开app的协议,ios同事提供***/
ifr.style.display = "none";
document.body.appendChild(ifr);
window.setTimeout(function(){
document.body.removeChild(ifr);
window.location.href = "http://itunes.apple.com/cn/app/******"; /***下载app的地址***/
},2000);
}else if (navigator.userAgent.match(/android/i)) {
//var state = null;
try {
window.location = '*****://'; //安卓兄弟可以给你
setTimeout(function(){
window.location= "https://**********"; //android下载地址
},2000);
} catch(e) {}
}
}
}补充:JS判断浏览器是否安装了某个软件
JS判断浏览器是否安装了某个软件
首先到https://github.com/ismailhabib/custom-protocol-detection/blob/master/protocolcheck.js ,git clone或 直接 zip 下载 protocolCheck.js插件
window.protocolCheck("调用本地软件的协议", function() {
// 没有安装时的执行函数
});作者最新文章
JS处理含Emoji或中文的字符串转数组乱码问题
2026-11-05 16:12:28
JS怎么使用展开运算符合并对象
2026-11-05 14:42:18
ES6+环境下判断JS对象为空的简洁写法
2026-11-05 12:12:23
怎么通过replacer函数自定义JS中JSON的格式化输出
2026-11-05 11:19:44
JS正则表达式基础:字面量与RegExp构造函数的区别及常用元字符
2026-11-05 11:16:58
