js判断是否安装app,安装打开app
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Title</title>
- <script>
- document.addEventListener('DOMContentLoaded', function () {
- document.querySelector('.downlink').addEventListener('click', function () {
- var loadDateTime = new Date(),
- href = location.href,
- appInnerUrlPrefix = 'http://a.app.qq.com/o/simple.jsp?pkgname=',
- newHref = href.substring(href.indexOf('//') + 2)
- var isiOS = navigator.userAgent.match('iPad') || navigator.userAgent.match('iPhone') || navigator.userAgent.match(
- 'iPod'),
- isAndroid = navigator.userAgent
- .match('Android'),
- isDesktop = !isiOS && !isAndroid;
- if (isiOS) {
- newHref = appInnerUrlPrefix + "com.zhulogic.xita_home";
- } else if (isAndroid) {
- newHref = appInnerUrlPrefix + "com.zhulogic.xita_home&g_f=991653";
- } else {
- newHref = appInnerUrlPrefix + "com.zhulogic.xita_home&g_f=991653";
- }
- setTimeout(function () {
- console.log(newHref);
- var timeOutDateTime = new Date();
- if (!loadDateTime || timeOutDateTime - loadDateTime < 1210) {
- location.href = newHref;
- }
- }, 1200);
- location.href = 'zhulogic://';
- }, false)
- }, false)
- </script>
- </head>
- <body>
- <div class="downlink" style="background-color: red;height: 300px;width: 300px;">
- </div>
- </body>
- </html>
IOS8.3(都可以跳转到下载页)
- safari可呼起APP
- 手机百度可呼起APP
- QQ不能呼起APP
- QQ空间可呼起APP
- 微信不能呼起APP
IOS9.2.1(都可以跳转到下载页)
- safari可呼起APP,但在呼起之前会弹出提示,需要选择“open”之后才会呼起
- 手机百度可呼起APP
- QQ空间可呼起APP
- QQ不能呼起APP
- 微信不能呼起APP
- 微博不能呼起APP
- 知乎不能呼起APP
魅族Android5.0.1(都可以跳转到下载页)
- 原生浏览器不能呼起APP
- QQ浏览器可呼起APP(但是会稍微延迟一会儿,时间可以接受)
- Chrome可呼起APP
- UC浏览器可呼起APP,但是在呼起之前会弹出提示,需要选择“仅本次允许”之后才会呼起
- QQ可呼起APP
- 微信可呼起APP(APP的呼起会晚于跳转到下载页)
- 手机百度可呼起APP
- 微博不能呼起APP
三星Android4.4(都可以跳转到下载页)
- 原生浏览器可呼起APP
- QQ可呼起APP(打开了2次)
- 微信不能呼起
- 手机百度可呼起APP
- QQ浏览器可呼起APP
js判断是否安装app,安装打开app的更多相关文章
- js判断移动端是否安装某款app的多种方法
本文实例讲解了js判断移动端是否安装某款app的多种方法,分享给大家供大家参考,具体内容如下 第一种方法: 一:判断是那种设备 ? || u.indexOf(; //android终端或者uc浏览器 ...
- 一个JS判断客户端是否已安装某个字体(Only IE)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js判断页面在pc端打开还是移动端打开
js判断页面在pc端打开还是移动端打开,分别跳转不同的index.html window.addEventListener('load', function() { // true为手机,false为 ...
- js判断移动端是否安装某软软件,安装直接打开相应的链接,否则跳转到下载商店方法
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- JS判断手机端是否安装某应用
方法一(网页上判断) if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) { var loadDateTime = new Date() ...
- js判断当前浏览器是否是源生app的webview
有些时候,我们在开发过程中需要判断,当前页面被打开是否是处于源生的webview里面,或者NODEJS做服务器后端支持的时候,判断请求来源是否来至于源生webview里面被打开的页面请求GET/POS ...
- js 判断移动端是否安装应用
var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > ...
- JS判断在哪一端浏览器打开
<script src="js/jquery-2.2.3.min.js"></script> <script> var browser = { ...
- js判断浏览器在PC中打开还是移动设备中打开
var browser = { versions: function () { va ...
- js判断页面从何种浏览器打开
问题 有时项目需要根据不同的设备进行不同的处理,需要判断到底是哪种设备打开了项目. 移动端浏览器检测 移动终端浏览器版本信息: var browser = { versions: function ( ...
随机推荐
- mysql 一条sql完成saveOrUpdate 存在即更新
关键字 on duplicate key update <pre name="code" class="sql"> insert into tabl ...
- spring boot项目打包成war
一.修改打包类型 在pom.xml中修改 <packaging>war</packaging> 二.移除嵌入式tomcat插件,并以依赖方式引入 <dependency& ...
- AGC024B Backfront
题目大意 给你一个1~n的排列 你有两个操作:将一个数移到最后或将一个数移到最前 问将排列排序最少要几次操作 分析 年纪大了,脑子不行了.. 实际我们只需求出对与一段连续的数它在排列中已经有序的最长长 ...
- 进程管理工具-Supervisord 使用
简介 Supervisor 是一个用 Python 写的进程管理工具,可以很方便的用来在 UNIX-like 系统(不支持 Windows)下启动.重启(自动重启程序).关闭进程(不仅仅是 Pytho ...
- linux to extract contents between patterns
参考:http://stackoverflow.com/questions/19177721/extract-lines-between-two-patterns-from-a-lfile awk ' ...
- 正则sub的使用
import re # unicode 编码匹配范围[u4e00-u9fa5] pattern = re.compile('(\w+) (\w+)') s = 'hello 123,hello 456 ...
- C#设计模式:观察者模式(Observer Pattern)
一,什么是观察者模式(Observer Pattern)? 当对象间存在一对多关系时,则使用观察者模式(Observer Pattern).比如,当一个对象被修改时,则会自动通知它的依赖对象 二,代码 ...
- Java8 LocalDate操作时间和日期的API
时间项目中的涉及到的时间处理非常多,犹豫SimpleDateFormat的不安全性以及Calendar等类在计算时比较复杂, 往往我们都会使用工具类来封装较多的日期处理函数, 但是JDK8中新增了操作 ...
- 关于UITableViewAutomaticDimension的产生的bug
一.下面这句代码要想有作用 在iOS11之前需要适配,两个代理都需要实现 - (CGFloat)tableView:(UITableView *)tableView heightForHeader ...
- MyEclipse2017搭建android开发环境
1 安装MyEclipse2017cli7; 2 准备安装ADT插件和 Android SDK 开发包;比如:ADT-24.0.2 android-sdk_r24.4.1-windows; 工具栏点击 ...