H5 唤起 APP的解决方案】的更多相关文章

H5 页面唤起APP或跳转到下载APP的某个链接地址.总结如下: 在 IOS 中, 系统版本在 8 以下时,可以监听页面的 pagehide / visibilitychange 事件. 系统版本大于 8 以后,可以使用 universal Link 或 URL scheme 进行跳转. // IOS 的唤起 function vForIOS(urlScheme, storeURL, fallback, universalLink) {     var tid = deferFallback(T…
H5唤起app 1.判断是否在微信中打开 无论是在哪个平台的客户端Android/IOS,在微信的平台上访问都有一个问题,那就是无法启动客户端,这是微信为了安全性考虑的限制,android这边屏蔽schema协议,除非公司是微信的伙伴加入了白名单才能使用,IOS系统可以去访问app对应appstore的下载页,但是微信经常屏蔽appstore的这个网址,进而访问不到.比较方便的做法就是在微信浏览器中,无论是IOS还是android都去应用宝的下载(IOS 这边最后会到appstore中)页面打开…
// 检查app是否打开 function checkOpen(cb) { const clickTime = +(new Date()); function check(elsTime) { if (elsTime > 3000 || document.hidden || document.webkitHidden) { cb(true); } else { cb(false); } } // 启动间隔20ms运行的定时器,并检测累计消耗时间是否超过3000ms,超过则结束 let count…
//唤起app通过唤端媒介(URL Scheme)   //微信浏览器自6.3.x版本起禁用了大多数Scheme跳转功能,扫一扫目前可用   // URL 的组成:   // [scheme:][//authority][path][?query][#fragment]   //比如:<a href="weixin://scanqrcode">打开微信扫一扫</a>   或者window.location.href = 'weixin://scanqrcode'…
今天我们就来说说这个callapp-lib 我的接到的需求大概是这样的 如果检测到不是在app里面用webview打开的页面就会显示上面的立即打开按钮, 点击的话会判断是否在微信中, 如果在微信中打开就会显示点击右上角-选择在safari中打开的图片, 然后在浏览器中直接跳转打开app, 跳到app对应的页面 首先分析需求, 第一步判断现在在哪个端打开的网页 export default function(context) { if (process.server) { let ua = con…
首先看下完整的流程: 简单说下universal link 在iOS9之前,唤起方式和现在安卓是一个的,都是使用scheme进行唤起,这种方式有个小问题,每次唤起,都会给个提示:是否打开xx应用,这样从体验上来讲,又让用户多一步操作.universal link会直接跳转,不会在页面做停留,条件就是在我们项目的根目录,增一个apple-app-site-association.json文件,里面的内容大致是这样: 微信.微博.QQ.Safari在各平台的唤起方案 微信 微信是最重要的一种分享渠道…
$(function () { function _openAppUrl(appUrl){ var ua = navigator.userAgent.toLocaleLowerCase(), openBrowser = null, deviceVersion = 0, matchVersion = null, openAppType = "", downLoadUrl = 'http://pages.book.qq.com/pages/qidian/qddown/qdreader.ht…
前言 写过hybrid的同学,想必都会遇到这样的需求,如果用户安装了自己的APP,就打开APP或跳转到APP内某个页面,如果没安装则引导用户到对应页面或应用商店下载.这里就涉及到了H5与Native之间的交互,为什么H5能够唤起APP并且跳转到对应的页面? 就算你没写过想必也体验过,最常见的就是抖音里面的一些广告,如果你点击了广告,他判断你手机装了对应APP,那他就会去打开那个APP,如果没安装,他会帮你跳转到应用商店去下载,这个还算人性化一点的,有些直接后台给你去下载,你完全无感知. 哈哈,是…
在没接触这个功能之前,查询各种文档后也只是似懂非懂,做过之后,发现其实很简单,简言之就是通过一个iframe或者a标签来跳转app端提供的URL schema(至于这个URL schema的组成格式,前端可以不用管,如果确实想要知道,可以自行百度),经测试用iframe标签的兼容性比a标签要好,故此处以iframe为例 autoCallApp(scheme, btnLink) { // scheme:schema链接, btnLink:本地未安装app时要跳转的目的链接 const ifr =…
做唤起时需要native端进行配合, h5唤起app这种需求是常见的.在移动为王的时代,h5在app导流上发挥着重要的作用. 目前我们采用的唤起方式是url scheme(iOS,Android平台都支持),只需原生APP开发时注册scheme, 那么用户点击到此类链接时,会自动跳到APP. 类似于这种地址: window.location.href='xkd://xkd.yirendai.com' 像腾讯的app比如微信 及qq,如果做唤起的化它是不让你直接唤起app的,安卓系统需要跳到应用宝…