微信或浏览器访问h5链接,点击操作后进入指定app
- Universal Links IOS >= 9环境下会默认打开apple-app-site-association文件
universal link是ios9之后出的功能。它是通过传统HTTP链接来启动App。它其实就是一个https开头的链接,还要满足一些特定的规则才能被识别为universal link,才能直接唤起app(支持传参)
缺点:个别浏览器不支持唤醒,不支持跳转到app store;通用链接可被屏蔽,点击右上角配置的链接之后,通用链接就失效了,在浏览器中点击‘打开’继续支持唤醒(ios10);...
Universal Link的基本运作流程;
APP第一次启动 or APP更新版本后第一次启动;
APP向工程里配置的域名发起Get请求拉取apple-app-association Json File;
APP将apple-app-association注册给系统;
由任意webview发起跳转的url,如果命中了apple-app-association注册过的通用链接;
打开App,触发Universal Link delegate;
没命中,webview继续跳转url;
在你进行apple-app-association 以及 App工程的配置之后,整个Universal Link的运作流程完全由系统控制了。
参考网站:
b站:ios 微信直接打开、safari直接打开。其他浏览器 指定safari浏览器打开指示弹框,或者跳转app store
function openApp(url) {
var u = navigator.userAgent, ua = u.toLowerCase();
if (ua.match(/iPhone\sOS/i) == "iphone os") {
// 判断是否是qq、qq浏览器、微博 (这里的qq判断不精准)
if(ua.match(/QQ/i) == "qq" || ua.match(/MQQBROWSER/i) == "mqqbrowser" || ua.match(/WeiBo/i) == "weibo"){
$(".fixed_back").show(); // 弹框显示
}else{
window.location.href = url; // Universal Link 指定连接
}
} else if (ua.match(/Android/i) == "android") {
// android 手机
}
}
$(".fixed_back").click(function () { $(".fixed_back").hide(); })
- URL Scheme
URL scheme是在app内配置的链接,比如:weixin://,superclass://
URL scheme的格式是[scheme]