H5下载打开APP页面通用模板
1. HTML代码
url: http://view.seeyouyima.com/startup.html?num=424&url=meetyou.linggan%3A%2F%2F%3Fpush_type%3D62
<a οnclick="download_meiyou();return false;" title="下载" href="javascript:;" id="download-btn"></a>
2. JS代码
<script type="text/javascript">
// 获取url参数,Bug: 如果是版本,则要同时兼任2.0和2两种情况。
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|#|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) {
if (name == 'v') { //版本
r[2] = parseFloat(r[2].substr(0, 3));
return r[2];
}
return encodeURIComponent(decodeURIComponent(unescape(r[2])));
}
return null;
}
// 区分userAgent浏览器类型,Bug: 微信判断,不能用var weixin = navigator.userAgent.match(/MicroMessenger/i) == "micromessenger";进行判断。
var browser = navigator.userAgent.toLowerCase(); //userAgent类型;
var ios = browser.indexOf("iphone") > -1 || browser.indexOf("ipad") > -1 || browser.indexOf("ipod") > -1 || browser.indexOf("itouch") > -1 || browser.indexOf("ios") > -1 || browser.indexOf("mac") > -1; //ios终端
var android = browser.indexOf("android") > -1 || browser.indexOf("linux") > -1; //android终端
var weixin = browser.indexOf('micromessenger') > -1; //微信浏览器
var other = browser.indexOf('mqqbrowser') > -1 || browser.indexOf('ucweb') > -1; //其它浏览器
var wp = browser.indexOf('windows phone') > -1; //window phone终端
var pc = browser.indexOf('windows nt') > -1 || browser.indexOf('macintosh') > -1; //PC终端=window终端+mac终端
// 设置各个版本的下载链接地址
var path = {
169: {
ios: 'https://itunes.apple.com/us/app/you-zi-jie-shou-ji-shang-nu/id1054877169?l=zh&ls=1&mt=8',
android: 'http://yzjdl.xixiaoyou.com/169.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
224: {
ios: 'http://um0.cn/1DDQhs',
android: 'http://yzjdl.xixiaoyou.com/youzijie224.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
225: {
ios: 'http://um0.cn/1Vzj5G',
android: 'http://yzjdl.xixiaoyou.com/youzijie225.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
226: {
ios: 'http://um0.cn/35VMNr',
android: 'http://yzjdl.xixiaoyou.com/youzijie226.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
264: {
ios: 'https://itunes.apple.com/app/apple-store/id1054877169?pt=91900801&ct=fensitong264&mt=8',
android: 'http://yzjdl.xixiaoyou.com/youzijie264.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
265: {
ios: 'https://itunes.apple.com/app/apple-store/id1054877169?pt=91900801&ct=fensitong265&mt=8 ',
android: 'http://yzjdl.xixiaoyou.com/youzijie265.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
423: {
ios: 'https://itunes.apple.com/app/apple-store/id1054877169?pt=91900801&ct=uctoutiao423&mt=8 ',
android: 'http://yzjdl.xixiaoyou.com/youzijie423.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
},
424: {
ios: 'https://itunes.apple.com/app/apple-store/id1054877169?pt=91900801&ct=uctoutiao424&mt=8',
android: 'http://yzjdl.xixiaoyou.com/youzijie424.apk',
wechat: 'http://a.app.qq.com/o/simple.jsp?pkgname=com.meiyou.youzijie&ckey=CK1319740419600'
}
};
// 点击按钮,执行download_meiyou函数,Bug: 其中PC端的统一下载Android的版本。
// Bug: 在IOS和Android判断中均要优先判断微信类型,否则微信中的链接直接打开ios链接而无反应。
function download_meiyou() {
var downloadURL = "";
var num = getUrlParam('num');
if (ios) {
if (weixin)
downloadURL = path[num].wechat;
else
downloadURL = path[num].ios;
} else if (android || other) {
if (weixin)
downloadURL = path[num].wechat;
else
downloadURL = path[num].android;
// } else if (wp) {
// downloadURL = "http://t.cn/RPcmviT";
} else {
downloadURL = path[num].android;
}
window.location.href = downloadURL;
}
// 自动打开APP,Bug: 其中IOS利用window.location直接跳转协议地址,Android利用iframe打开。
window.onload = function() {
var url = getUrlParam('url');
if (url) {
url = decodeURIComponent(url);
}
if (ios) {
window.location = url;
} else if (android) {
var b = document.createElement("iframe");
b.src = url;
b.style.display = "none";
window.setTimeout(function() {
document.body.appendChild(b);
}, 10);
window.setTimeout(function() {
document.body.removeChild(b);
}, 2000);
}
}
</script>
H5下载打开APP页面通用模板相关推荐
- H5 跳转Flutter APP问题:在Flutter中解决H5能够打开APP并接收H5传递的参数
最近遇到了这个问题,其实这个问题在源生开发中算是一个很常见的问题.有很多场景都需要通过其他APP或者H5来打开APP并且有时候会携带参数. 所以在这里我说一下我的做法(大神勿喷,有更好的办法请评论区留 ...
- mPaas-H5容器 如何将阿里特定H5容器打开的页面进行横屏?
前言 相信看到标题的朋友,会产生两个疑问,mPaas是什么?特定的H5容器是什么?mPaaS是源于支付宝 App 的移动开发平台,特定的H5容器是一款移动端 Hybrid 解决方案 SDK(Nebul ...
- H5链接打开APP并跳转到制定界面
手机如果安装了该应用,就直接打开该应用:如果没有安装该应用,就下载该应用.那么下面就对在浏览器中,用js判断某用户是否安装了该应用,并判断是否打开该应用做个简单的介绍. 那么,怎么判断某用户是否安装了 ...
- ios浏览器打开app页面提示“浏览器打不开该网页,因为网址无效”
在一次开发app中实现遇到的问题,实现H5页面唤醒app并跳转到指定页面,手机没有此app就跳转到商城下载页面,安卓手机有无app进行的跳转都在自己意料之中,毫无问题,但是iOS在有app的时候正常跳 ...
- 支付宝支付(二):PC支付,H5支付,APP支付通用接口
目录 一.PC端支付: 二.H5端支付: 三.APP端支付: 一.PC端支付: 1.调用支付接口,返回form表单,前端直接渲染跳转到支付宝PC端统一的支付页面 2.官方文档入口:https://op ...
- 京东html5游戏,京东H5直接打开app的代码分析(未完待续)
(function(){ // 判断浏览器 var Navigator = navigator.userAgent; var ifChrome = Navigator.match(/Chrome/i) ...
- H5下载安装app(ios端和android)
注意:以下只包含核心处理代码,有些变量及取值需要自行处理 var u = navigator.userAgent;console.log(u,'ua')let isAndroid = u.indexO ...
- 使用纯H5开发手机app页面的一些经验
1.让图片作为某个div的背景图 给给这个div设置class属性:backgrand: url( "图片地址") 2.图片作为背景时自适应div大小 对背景图片设置属性:back ...
- 蒲公英服务器搭建小程序,wx小程序—— 小程序页面通用模板的使用
![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMzN ...
最新文章
- javascript实现小九九乘法口诀
- STL_vector
- [Nhibernate]SchemaExport工具的使用(二)——创建表及其约束、存储过程、视图
- sklearn数据的获取
- 中文高频词汇统计并绘制词云
- java RSA 加签验签【转】
- 多线程编程和单线程编程_生活与编程的平行线程
- javascript中字符串的比较规则
- 高性能云网关,打通云内外业务互通的任督二脉
- #{}不自动改参数类型_Spring参数的自解析还在自己转换?你out了!
- Python3 Socket和SocketServer 网络编程
- ubuntu20.04 下查看(改变)本地端口开放情况,开启和关闭防火墙
- android沉浸状态栏工具,Android 状态栏工具——一行代码实现状态栏...
- List转换成json类型以及对象转换成json类型
- Python实现四阶龙格库塔法求解Ricatti方程
- Android布局——小米便签编辑界面xml
- SQL Server 索引碎片和填充因子
- CUDNN历史版本下载地址,可跳过登录下载cudnn
- vue echarts绘制市级地图下钻(带注释)
- 【本人秃顶程序员】求求你别再写 bug 了,秃顶程序员告诉你避免空指针的 5 个案例!