通过JS下载 or 唤起App
判断唤起app的连接是否在WeChat中打开
let isWeiXin = navigator.userAgent.toLowerCase().indexOf('micromessenger') != -1;
// 监测手机设备的系统
systemType(isWeiXin);
判断手机设备为iOS的方法
// iOS
function toiOS() {
$('#DBL').click(function() {
/* [app scheme码]:// */
window.location.href = 'scheme://';
setTimeout(function() {
// iOS App Store下载地址
window.location = 'url';
}, 300);
setTimeout(function() {
window.location.reload();
}, 1000)
});
}
判断手机设备为Android的方法
// Android
function toAndroid(isWeiXin) {
if (isWeiXin) {
// 在微信中打开链接的提示信息
$('#DBL').click(function() {
$('#zz').fadeIn();
});
$('#zz').click(function() {
$(this).fadeOut();
});
} else {
var ifr = document.createElement('iframe');
/* Android app scheme码 打开地址 */
ifr.src = 'scheme://host/openwith';
ifr.style.display = 'none';
document.body.appendChild(ifr);
$('#DBL').click(function() {
// Android.apk下载地址
window.location = 'url';
});
}
}
判断手机系统类型(Android、iOS、WeChat)
// 判断手机系统
function systemType(isWeiXin) {
let u = navigator.userAgent,
app = navigator.appVersion;
// 监测设备
let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1,
isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
// iOS 设备判断
if (isiOS) toiOS();
// Android 设备判断
if (isAndroid) toAndroid(isWeiXin);
}
注:
在WeChat中,因为微信的安全机制的问题,通过微信唤起不同设备的app的方法也存在一定的差异;iOS与Android的安全机制不同,唤起各自设备的app的方法也有所差别。
iOS所有的app都是在App Store中完成的,所以可以通过微信直接唤起苹果的App Store来实现app的唤起和下载;
Android中app的来源五花八门,可以通过app应用市场、浏览器等来实现app的唤起和下载;因为微信的安全机制,无法通过微信直接唤起app或下载app,只能通过微信提供的插件“浏览器”中打开当前链接,通过浏览器来实现app的下载和打开功能。
通过JS下载 or 唤起App的更多相关文章
- 【js】手机浏览器端唤起app,没有app就去下载app 的方法
这种功能的作用: 1.一般公司有自己的app,而app是需要不断有新用户涌入才能持续运营,达到不错的收入.就需要使用这种方式进行引入新的用户. 2.一些内容在网页端体验不好,或者一些功能需要app内才 ...
- h5页面唤起app(iOS和Android),没有安装则跳转下载页面
浏览器和app没有通信协议,所以h5不知道用户的手机释放安装了app.因此只能是h5去尝试唤起app,若不能唤起,引导用户去下载我们的app. 微信里屏蔽了 schema 协议,如果在微信中打开h5, ...
- js 唤起APP
常常有这样的场景,咱们开发出来的APP需要进行推广,比如在页面顶部来一张大Banner图片,亦或一张二维码.但往往我们都是直接给推广图片加了一个下载链接(App Store中的).所以咱们来模拟一下用 ...
- H5唤起app
H5唤起app 1.判断是否在微信中打开 无论是在哪个平台的客户端Android/IOS,在微信的平台上访问都有一个问题,那就是无法启动客户端,这是微信为了安全性考虑的限制,android这边屏蔽sc ...
- 如何应用前端技术唤起app及判断用户来源及与原生交互的原理
做唤起时需要native端进行配合, h5唤起app这种需求是常见的.在移动为王的时代,h5在app导流上发挥着重要的作用. 目前我们采用的唤起方式是url scheme(iOS,Android平台都 ...
- H5如何实现唤起APP
前言 写过hybrid的同学,想必都会遇到这样的需求,如果用户安装了自己的APP,就打开APP或跳转到APP内某个页面,如果没安装则引导用户到对应页面或应用商店下载.这里就涉及到了H5与Native之 ...
- 去它的h5,我还是用js写原生跨平台app吧
智能手机功能越来越强大,已经在逐渐替代电脑的作用.百度.腾讯.阿里的移动端日活数也在逐步的赶上甚至超越电脑端用户.叫喊着“mobile first”的公司越来越多,App开发者应运而生,且队伍日趋庞大 ...
- App.js – 用于移动 Web App 开发的 JS 界面库
App.js 是一个轻量级的 JavaScript UI 库,用于创建像本地应用程序的移动 Web 应用而不牺牲性能和体验.它是跨平台的,特定的UI设计,配置类似原生的过渡效果.App.js 的目的是 ...
- touch.js下载使用方式
touch.js下载地址 https://gitee.com/mirrors/touch-js Touch 在开发移动端的应用中会使用到很多的手势操作,例如一指拖动.两指旋转等等,为了方便开放者快速集 ...
随机推荐
- Error: Opening Robot Framework log failed on mac jenkins
For resolve your problem you must : Connect on your jenkins url (http://[IP]:8080/) Click on Manage ...
- jQuery 遍历方法大全
下表列出了用于jQuery 遍历所有方法. 方法 描述 add() 将元素添加到匹配的元素集中 addBack() 将上一组元素添加到当前组中 andSelf() 在版本1.8中已弃用. addBac ...
- 用python登录12306 并保存cookie
一篇拿来记录的文章,是看其他博主写的,想在这记一下 import sys import time import requests from PIL import Image import json i ...
- MES系统如何帮助烟草行业管理生产流程
与很多其他行业一样,烟草MES系统可以帮助卷烟企业实现智能生产.精益制造.快速实现烟草企业数字化车间的创建,助力企业实现改造升级,从而提升企业生产效率,降低生产成产.烟草行业得MES者得天下. 烟草行 ...
- Excel数据导入到Sql server
问题:数据库内直接操作导致 错误 0xc020901c: 数据流任务 1: 源 - yndata1$.输出[Excel 源输出] 上的 源 - yndata1$.输出[Excel 源输出].列[ind ...
- numpy,matplotlib,pandas
目录 numpy模块 numpy简介 numpy使用 matplotlib模块 条形图 直方图 折线图 散点图+直线图 pandas模块 numpy模块 numpy简介 numpy官方文档:https ...
- [TCP/IP] ping traceroute和TTL
1.Time To Live是生存时间的意思,就是说这个ping的数据包能在网络上存在多少时间.当我们对网络上的主机进行ping操作的时候,我们本地机器会发出一个数据包,数据包经过一定数量的路由器传送 ...
- CentOS7忘记root密码的修改方法
参考文献: [1]CentOS 6 & 7 忘记root密码的修改方法_Linux教程_Linux公社-Linux系统门户网站
- Hello,DTOS!(下)
如何验证编写的主引导程序?解决方案设计:将汇编源码编译为二进制机器码(nasm)创建虚拟盘(bximage)将二进制代码写入虚拟盘起始位置(dd)在虚拟机中将虚拟盘作为启动盘执行(vmware) 就算 ...
- 201871010107-公海瑜《面向对象程序设计(java)》第八周学习总结
201871010107-公海瑜<面向对象程序设计(java)>第八周学习总结 项目 内容 这个作业属于哪个课程 https:// ...