项目需求:扫码根据不同平台下载不同版本的APP。主要是ios和Android。

网上找了很多,前面判断平台的代码很容易找到,但是后面的就有些坑了。有的人的是根本跑不通。有的是代码补全。

下面是 微信扫码下载APP。(iOS版)

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>下载APP</title>
</head>
<body> </body>
<script>
// 判断是不是 ios 设备
function checkIsAppleDevice() {
let u = navigator.userAgent,
app = navigator.appVersion;
console.log('u======', u);
console.log('app=======', app)
let ios = !!u.match(/\i[^;]+;( U;)? CPU.+Mac OS X/);
let iPad = u.indexOf('iPad') > -1;
let iPhone = u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1;
if(ios || iPad || iPhone) {
return true;
} else {
return false;
}
}
// alert( checkIsAppleDevice() ) // 判断是不是 Android 设备
function checkIsAndroidDevice() {
let u = navigator.userAgent;
// console.log(u);
if(u.indexOf('Android') > -1 || u.indexOf('Adr') > -1 ) {
return true;
} else {
return false;
}
} if (checkIsAppleDevice()) {
// alert('苹果手机')
window.location.href = 'https://apps.apple.com/us/app/APP的包名/id+ID号?l=zh&ls=1'
} else {
// alert('安卓手机')
// 安卓手机暂时没跑通,不写
} function isWinxin() {
var ua = window.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i) == 'micromessenger') {
return true;
} else {
return false;
}
} // http://www.qianhengnet.com/jeesite/static/download.html </script>
</html>

将上面的页面放到服务器上,然后将地址生成一个二维码,再扫描就可以了。

上面苹果手机的 链接是可以从提交APP的官网获得的。

获得 链接:

新打开的页面就是:

这就是代码中链接的由来。

iOS的就可以成功了。安卓的比较麻烦还没找到好的方法。

通过扫码打开IOS的App Store下载APP(Android版暂时没找到解决方法)的更多相关文章

  1. iOS 跳转到 App Store 下载评分页面

    html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...

  2. 《iOS开发指南:从零基础到App Store上架(第2版)》

    <iOS开发指南:从零基础到App Store上架(第2版)> 基本信息 作者: 关东升 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115348029 上架时间:201 ...

  3. Mobile Safari调用本地App, 否则进入App Store下载

    需求: 如何让用户通过手机浏览器(Mobile Safari),访问一个URL就能直接打开ios上的App应用,如果该应用没有安装,那么直接跳转到App Store的App下载页面. 准备工作 ios ...

  4. App Store转让App

    转让前提条件:①App在App Store能找到     ②该App没有正在审核中的版本 iOS在App Store转让App的详细步骤, 每一步都有图,照图一步一步来就OK 1.获得接收App的苹果 ...

  5. 根据appid跳到App Store某个APP的详情页

    需求 本手机是否装了某个APP 示例百度appid 382201985  scheme BaiduSSO:// 1.是,直接打开百度APP 2.否,跳到App Store百度APP的详情页 NSStr ...

  6. 苹果App Store提交app审核时EULA(终端用户软件使用条款)的注意事项等政策解读

    写在前面,今天是2014年10月14日,以下内容可能会随着时间的推进而失效,请注意时效性 当在App Store提交app审核的时候,苹果通常会要求开发者提供一个EULA,苹果默认提供了一个,地址:  ...

  7. ios应用里面进入app store 下载界面

    转自:http://blog.csdn.net/diyagoanyhacker/article/details/6654838 在IOS应用里直接打开app store 评论页面的方法: [[UIAp ...

  8. Hbuild在线云ios打包失败,提示BuildConfigure Failed 31013 App Store 图标 未找到 解决方法

    用 hbuild 打 IOS 包,打包失败,提示以下错误: manifest.plus.plugins.push.igexin;manifest.plus.plugins.oauth.weixin; ...

  9. iOS APP版本更新跳转到App Store下载/更新方法

    使用下面的连接即可跳转到App Store itms-apps://itunes.apple.com/cn/app/id***********                  其中********* ...

随机推荐

  1. jquery 属性名修改

    jquery   attr <script> // 获取class 名 $(".box").attr("class") // 修改或添加class名 ...

  2. Java-100天知识进阶-GC种类-知识铺(六)

    知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累.不占太多时间,不停的来唤醒你记忆深处的知识点. 一.GC回收器的 4个指标: 1.Throughput,非gc时间与总运行时间的比重. ...

  3. 我在生产项目里是如何使用Redis发布订阅的?(一)使用场景

    转载请注明出处! 导语 Redis是我们很常用的一款nosql数据库产品,我们通常会用Redis来配合关系型数据库一起使用,弥补关系型数据库的不足. 其中,Redis的发布订阅功能也是它的一大亮点.虽 ...

  4. Mysql 查询表字段数量

    select count(*) from information_schema.`COLUMNS` where TABLE_SCHEMA='dbName' -- 数据库名 and TABLE_NAME ...

  5. axios和fetch区别对比

    axios axios({ method: 'post', url: '/user/12345', data: { firstName: 'Fred', lastName: 'Flintstone' ...

  6. 【UOJ#75】【UR #6】智商锁(矩阵树定理,随机)

    [UOJ#75][UR #6]智商锁(矩阵树定理,随机) 题面 UOJ 题解 这种题我哪里做得来啊[惊恐],,, 题解做法:随机\(1000\)个点数为\(12\)的无向图,矩阵树定理算出它的生成树个 ...

  7. NET 已知excel表格前面26个是a到z,27是aa28是ab,以此类推,N是多少

    问题: 已知excel表格前面26个是a到z,27是aa28是ab,以此类推,N是多少 代码: /// <summary> /// 已知excel表格前面26个是a到z,27是aa28是a ...

  8. 开源工作流引擎 Workflow Core 的研究和使用教程

    目录 开源工作流引擎 Workflow Core 的研究和使用教程 一,工作流对象和使用前说明 二,IStepBuilder 节点 三,工作流节点的逻辑和操作 容器操作 普通节点 事件 条件体和循环体 ...

  9. NIO你真正了解多少?

    解释一下java.io.Serializable接口 类通过实现 Java.io.Serializable 接口以启用其序列化功能.未实现此接口的类将无法使其任何状态序列化或反序列化. IO操作最佳实 ...

  10. Lambda(二)lambda表达式使用

    Lambda(二)lambda表达式使用 Lambda 表达式组成: /* param list arrow lambda body (o1,o2) -> o1.getColor().Compa ...