移动端H5唤起APP的写法实例(IOS、android)
短信预约 -IT技能 免费直播动态提醒
IOS
1.url scheme
这个方案基本上就是针对微信、qq内置浏览器,qq浏览器等之外的其余浏览器,从native那边要一个scheme ,然后放在a标签里或者location.href跳一下就行了
用一个iframe去做的一个跳页,有的话唤起scheme没有的话,会触发定时器跳到下载地址。但是这个方式在ios里面,在没有app的时候会遇到两次提示,
var openApp = function (class="lazy" data-src) {
// 通过iframe的方式试图打开APP,如果能正常打开,会直接切换到APP,并自动阻止a标签的默认行为
// 否则打开a标签的href链接
const ifr = document.createElement('iframe');
ifr.class="lazy" data-src = class="lazy" data-src;
ifr.style.display = 'none';
document.body.appendChild(ifr);
var poenTime = +new Date()
window.setTimeout(() => {
document.body.removeChild(ifr);
if ((+new Date()-openTime>2500)){
window.location = 'APP Store下载的地址 '
}
}, 600);
};
2.Universal Link(ios)
这是iOS9推出的一项功能,如果你的应用支持Universal Links(通用链接),那么就能够方便的通过传统的HTTP链接来启动APP(如果iOS设备上已经安装了你的app,不需要额外做任何判断等),或者打开网页(iOS设备上没有安装你的app)。或许可以更简单点来说明,在iOS9之前,对于从各种从浏览器,Safari、UIWebView或者 WKWebView中唤醒APP的需求,我们通常只能使用scheme。
window.location.href ="APP给的Universal Link"
总结
兼容写法
if (isGreaterThan9){
window.location.href ="APP给的Universal Link" ;
return;
}
openApp(class="lazy" data-src)
android
方法类似
if (openApp('url scheme url')) {
openApp('url scheme url');
} else {
setTimeout(() => {
window.location.href = 'APP 市场下载地址';// 一般是google, 各个应用商店不一样
}, 600);
}
}
总结
到此这篇关于移动端H5唤起APP的文章就介绍到这了,更多相关移动端H5唤起APP内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341