zoukankan      html  css  js  c++  java
  • 一个二维码如何自动识别是安卓(Android)还是苹果(IOS)

    思考问题:

    通常,我们开发一个APP,有Android版本、IOS版本。

    但是只有一个二维码?怎么办呢?

    怎么让IOS用户扫描二维码下载IOS版本,Android用户扫描二维码下载到Android版本呢?

    实现思路:

    1. 首先,需要新建一个html文件,通过JavaScript来判断用户的手机系统(IOS或Android),判断之后,根据不同的手机系统,跳转到不同的链接去下载。
    2. 然后,使用这个html文件的链接去生成一个二维码图片。
    3. 最后,拿出手机扫一扫二维码图片会跳转到相应的下载链接。

    给出代码:down.html

     1 <html>
     2 
     3 <head>
     4     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     5     <title>二维码下载</title>
     6 
     7     <script type="text/javascript">
     8         /*  
     9          * 智能机浏览器版本信息:  
    10          *  
    11          */
    12         var browser = {
    13             versions: function() {
    14                 var u = navigator.userAgent,
    15                     app = navigator.appVersion;
    16                 return { //移动终端浏览器版本信息  
    17                     trident: u.indexOf('Trident') > -1, //IE内核  
    18                     presto: u.indexOf('Presto') > -1, //opera内核  
    19                     webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核  
    20                     gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核  
    21                     mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), //是否为移动终端  
    22                     ios: !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端  
    23                     android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器  
    24                     iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器  
    25                     iPad: u.indexOf('iPad') > -1, //是否iPad  
    26                     webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部  
    27                 };
    28             }(),
    29             language: (navigator.browserLanguage || navigator.language).toLowerCase()
    30         }
    31 
    32         if (browser.versions.ios || browser.versions.iPhone || browser.versions.iPad) {
    33             window.location = "https://itunes.apple.com/cn/app/xxx";  //改地址放入IOS跳转链接
    34         } else if (browser.versions.android) {               //该地址放入Android下载包链接
    35             window.location = "http://zhj8.aliapp.com/xxx.apk";
    36         }
    37 
    38         //            document.writeln("语言版本: " + browser.language);  
    39         //            document.writeln(" 是否为移动终端: " + browser.versions.mobile);  
    40         //            document.writeln(" ios终端: " + browser.versions.ios);  
    41         //            document.writeln(" android终端: " + browser.versions.android);  
    42         //            document.writeln(" 是否为iPhone: " + browser.versions.iPhone);  
    43         //            document.writeln(" 是否iPad: " + browser.versions.iPad);  
    44         //            document.writeln(navigator.userAgent);
    45     </script>
    46 </head>
    47 
    48 <body>
    49 
    50 </body>
    51 
    52 </html>

    用这个down.html去生成一个二维码图片,再使用手机扫一扫即可。

    希望能够帮助到大家!若有问题,欢迎加群!

  • 相关阅读:
    _DataStructure_C_Impl:图的邻接矩阵存储
    ios的单元測试OCUnit以及更新了之后的XCTestCase
    java之 ------ 可变參数和卫条件
    【能力提升】SQL Server常见问题介绍及高速解决建议
    NYOJ 116 士兵杀敌 (线段树,区间和)
    Spring和MyBatis环境整合
    TypeScript和JavaScript的一些小技巧记录
    VSCode配置TypeScript
    function 与 => 的区别
    Egret里用矢量挖圆形的洞
  • 原文地址:https://www.cnblogs.com/CinderellaStory/p/9516597.html
Copyright © 2011-2022 走看看