zoukankan      html  css  js  c++  java
  • js判断手机是否安装了某一款app,有则打开,没有去下载

    function openApp(){
                if(navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) {
                    var loadDateTime = new Date();
                    window.setTimeout(function() {
                        var timeOutDateTime = new Date();
                        if(timeOutDateTime - loadDateTime < 5000) {
                            window.location = "要跳转的下载app页面URL";
                        } else {
                            window.close();
                        }
                    },25);
                    window.location = " apps custom url schemes ";
                } else if(navigator.userAgent.match(/android/i)) {
                    var loadDateTime = new Date();
                    var state = window.open("apps custom url schemes ", '_blank');
                    window.setTimeout(function() {
                        var timeOutDateTime = new Date();
                        if(timeOutDateTime - loadDateTime < 5000) {
                            window.location = "要跳转的下载app页面URL";
                        } else {
                            window.close();
                        }
                    },25);
                }
            }

    apps custom url schemes 是什么呢?


    其实就是你与APP约定的一个协议URL,你的IOS同事或Android同事在写程序的时候会设置一个URL Scheme, 例如设置: URL Scheme :app 然后其他的程序就可以通过URLString = app:// 调用该应用。 还可以传参数,如:app://reaction/?uid=1

    原理:500ms内,本机有应用程序能解析这个协议并打开程序,调用该应用;如果本机没有应用程序能解析该协议或者500ms内没有打开这个程序,则执行setTimeout里面的function,就是跳转到你想跳转的页面。 以上就是js判断移动端是否安装某款app的方法,希望对大家的学习有所帮助。

  • 相关阅读:
    面向对象、构造函数的区别
    写一个function,清除字符串前后的空格。(兼容所有浏览器)
    两个DIV高度自适应方法(左右两个DIV高度一样)
    js数组去重
    input框处理删除小图标的功能
    查找显示高亮
    JSON.parse()和JSON.stringify()
    jquery封装
    怎么理解HTML语义化
    html5语义化标签
  • 原文地址:https://www.cnblogs.com/wanan-01/p/9914531.html
Copyright © 2011-2022 走看看