js判断本地是否安装app

原创 2015年11月21日 16:57:19

var ua = navigator.userAgent.toLowerCase();

1.判断是否是微信

function isWeixinBrowser() {
        return (/micromessenger/.test(ua)) ? true : false;
    }

2.判断是否是android

var isAndroid = ua.indexOf('android') > -1 || ua.indexOf('linux') > -1;

3.具体过程

scheme是客户端定义的url-scheme

$("a[href^='scheme://']").on('click',function(e){
        e.preventDefault();//阻止默认行为
        if(isWeixinBrowser()){
            $('.layer').show();//遮罩层(使用外部浏览器打开,此处样式自行设定)
        }else{
            if(isAndroid){
                //android
                $('body').append("<iframe src='scheme://openapp' style='display:none' target='' ></iframe>");//target为空防止在当前页面刷新
                setTimeout(function(){window.location = 'http://www.510wifi.com/weixin_download_client.html'},600);
            }else{
                //ios
                window.location = 'scheme://openapp';
                setTimeout(function(){window.location = 'itms-apps://itunes.apple.com/app/id123456789'},25);
            }
        }
    })


附:判断手机端各种浏览器

if (ua.match(/WeiBo/i) == "weibo") {
                //在新浪微博客户端打开
        }
        if (ua.match(/QQ/i) == "qq") {
                //在QQ空间打开
        }
        if (browser.versions.ios) {
                //是否在IOS浏览器打开
        } 
        if(browser.versions.android){
                //是否在安卓浏览器打开
        }

var u = navigator.userAgent, app = navigator.appVersion;
trident: u.indexOf('Trident') > -1, //IE内核
            presto: u.indexOf('Presto') > -1, //opera内核
            webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
            gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
            mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
            ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
            android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或uc浏览器
            iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
            iPad: u.indexOf('iPad') > -1, //是否iPad
            webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部



版权声明:本文为博主原创文章,未经博主允许不得转载。

判断是否为微信浏览器

const = isWeixinBrowser = ()=>{ return /micromessenger/.test(navigator.userAgent.toLowerCase()) }
  • qq_28473733
  • qq_28473733
  • 2018年01月14日 21:42
  • 18

js判断移动端是否安装某款app的方法

这篇文章主要介绍了js判断移动端是否安装某款app的多种方法,感兴趣的小伙伴们可以参考一下...
  • EastRiseJi
  • EastRiseJi
  • 2017年03月01日 21:22
  • 324

js判断手机是否安装了某个APP,如果安装了就打开,没安装就下载

1需要先判断页面是否在微信中打开(因为微信中无法打开跳转外部链接),如果是在微信中,提示请在浏览器(android)或者safari(ios)中打开 2这里的schema是由手机端开发人员提供的...
  • u010394015
  • u010394015
  • 2016年05月18日 16:00
  • 7558

JS判断手机端是否安装了某个客户端APP

JS本身没法判断手机中是否安装了某个应用软件
  • woshiwanxin102213
  • woshiwanxin102213
  • 2014年11月12日 14:29
  • 26282

JS如何检测手机上APP是否安装的情况

我们在浏览网页的时候,你会看到一个网页下面漂浮着一个提示框“打开APP”或者“下载APP的字样”,如果你的手机已经安装过这个APP,那么网页会提示“打开APP”,如果没有安装,那就会提示“下载APP的...
  • wangpf1992
  • wangpf1992
  • 2016年11月08日 13:54
  • 1909

js判断移动端是否安装某款app的多种方法

本文实例讲解了js判断移动端是否安装某款app的多种方法,分享给大家供大家参考,具体内容如下 第一种方法: 一:判断是那种设备 var isAndroid = u.indexOf('...
  • dipolar
  • dipolar
  • 2016年05月10日 12:46
  • 1704

js判断是否安装app,安装打开app

Title document.addEventListener('DOMContentLoaded', function () { document....
  • qq_26744901
  • qq_26744901
  • 2016年08月22日 18:23
  • 1742

Js判断移动端是否存在客户端:如果存在则打开,如果不存在则下载

Js判断移动端是否存在客户端:如果存在则打开,如果不存在则下载直接上代码,自己保留使用$(".greenBtn").click(function(e){ openApp(e); ...
  • warylee
  • warylee
  • 2017年04月05日 15:11
  • 466

JS实现 浏览器判断本地是否安装程序,并下载与启动 Chrome,IE,360可用

场景需求:最近工程的一个需求,用户点击链接: 软件已经存在,则打开软件 软件未安装,则提示用户下载; 问题可以拆分成两部分: 判断软件是否存在,未安装时会提示用户安装;已安装软件...
  • evanxuhe
  • evanxuhe
  • 2018年02月02日 15:49
  • 29

js 判断是否安装qq msn等

http://lcx.cc/?i=3065 http://www.w3.org/TR/html4/loose.dtd">     New Document       ...
  • cnbird2008
  • cnbird2008
  • 2014年11月10日 14:17
  • 1779
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:js判断本地是否安装app
举报原因:
原因补充:

(最多只允许输入30个字)