zoukankan      html  css  js  c++  java
  • js判断移动端是否安装某款app

    最近在做项目的wap版,有个需求就是,先判断手机上是否有我们的APP应用,如果有的话打开应用,没有才跳转到wap页面。 
    wap简单来说就是运行在移动端浏览器上的网站。不管应用在什么地方,总之就是浏览器呗,可以通过JS来判断本地是否有某应用,实现方式实际就是将http协议转为本地软件协议。 
    还是直接贴代码吧。

    <script language="javascript">
     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 = "要跳转的页面URL";
       } else {
        window.close();
       }
      },
      25);
      window.location = " apps custom url schemes ";
     } else if (navigator.userAgent.match(/android/i)) {
      var state = null;
      try {
       state = window.open("apps custom url schemes ", '_blank');
      } catch(e) {}
      if (state) {
       window.close();
      } else {
       window.location = "要跳转的页面URL";
      }
     }
    </script>

    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的多种方法,希望对大家的学习有所帮助。

  • 相关阅读:
    感知机预测NBA总冠军
    java 一维数组
    2020-11-25
    2020-11-24学习日记
    Java语言概述
    人脸情绪识别系统---测试心得
    结对编程,问题不大
    结对编程之队友代码赏析
    项目测试心得——基于微信的图书销售小程序
    数据库设计心得
  • 原文地址:https://www.cnblogs.com/djdliu/p/6952959.html
Copyright © 2011-2022 走看看