用于deeplink的js方法(判断手机是否安装app)


Posted in Javascript onApril 02, 2014

代码功能:
判断手机/平板是否安装app
如果安装 则调用app的scheme,传入url当作参数,来做后续操作
如果没有安装 则跳转到app store/google play 下载app

(function() {
var openUrl = window.location.search;
try{
openUrl = openUrl.substring(1,openUrl.length);
}catch(e){
}
var isiOS = navigator.userAgent.match('iPad')
|| navigator.userAgent.match('iPhone')
|| navigator.userAgent.match('iPod'), isAndroid = navigator.userAgent
.match('Android'),isDesktop = !isiOS&&!isAndroid;
if (isiOS) {
setTimeout(function () { window.location = "itms-apps://itunes.apple.com/app/[name]/[id]?mt=8"; },25);
window.location = "[scheme]://[host]?url="+openUrl;
}else if(isAndroid){
window.location = "intent://[host]/"+"url="+openUrl+"#Intent;scheme=[scheme];package=[package_name];end";
}else{
window.location.href = openUrl;
}
})();
Javascript 相关文章推荐
js数值计算时使用parseInt进行数据类型转换(jquery)
Oct 07 Javascript
JavaScript使用Math.Min返回两个数中较小数的方法
Apr 06 Javascript
非常实用的vue导航钩子
Mar 20 Javascript
axios学习教程全攻略
Mar 26 Javascript
bootstrap弹出层的多种触发方式
May 10 Javascript
浅谈用Webpack路径压缩图片上传尺寸获取的问题
Feb 22 Javascript
vue写一个组件
Apr 09 Javascript
详解node字体压缩插件font-spider的用法
Sep 28 Javascript
electron-vue利用webpack打包实现多页面的入口文件问题
May 12 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
Aug 15 Javascript
实现vuex与组件data之间的数据同步更新方式
Nov 12 Javascript
用JS写一个发布订阅模式
Nov 07 Javascript
动态显示可输入的字数提示还可以输入的字数
Apr 01 #Javascript
自己实现ajax封装示例分享
Apr 01 #Javascript
jquery分页对象使用示例
Apr 01 #Javascript
JavaScript对象的property属性详解
Apr 01 #Javascript
easyui datagrid 键盘上下控制选中行示例
Mar 31 #Javascript
jQuery 取值、赋值的基本方法整理
Mar 31 #Javascript
js改变鼠标的形状和样式的方法
Mar 31 #Javascript
You might like
PHP 服务器配置(使用Apache及IIS两种方法)
2009/06/01 PHP
php 获取本机外网/公网IP的代码
2010/05/09 PHP
PHP字符串函数系列之nl2br(),在字符串中的每个新行 (\n) 之前插入 HTML 换行符br
2011/11/10 PHP
thinkphp配置连接数据库技巧
2014/12/02 PHP
Smarty保留变量用法分析
2016/05/23 PHP
thinkphp利用模型通用数据编辑添加和删除的实例代码
2016/11/20 PHP
PHP获取redis里不存在的6位随机数应用示例【设置24小时过时】
2017/06/07 PHP
php设计模式之工厂模式用法经典实例分析
2019/09/20 PHP
AngularJS基础 ng-include 指令简单示例
2016/08/01 Javascript
js弹出窗口简单实现代码
2017/03/22 Javascript
Mongoose经常返回e11000 error的原因分析
2017/03/29 Javascript
zTree jQuery 树插件的使用(实例讲解)
2017/09/25 jQuery
ES6/JavaScript使用技巧分享
2017/12/14 Javascript
VueAwesomeSwiper在VUE中的使用以及遇到的一些问题
2018/01/11 Javascript
微信小程序在其他页面监听globalData中值的变化
2019/07/15 Javascript
利用JS代码自动删除稿件的普通弹幕功能
2019/09/20 Javascript
[03:14]2014DOTA2西雅图国际邀请赛 EG战队巡礼
2014/07/07 DOTA
[01:01:52]DOTA2-DPC中国联赛正赛 iG vs LBZS BO3 第一场 3月4日
2021/03/11 DOTA
Python自定义进程池实例分析【生产者、消费者模型问题】
2016/09/19 Python
浅谈编码,解码,乱码的问题
2016/12/30 Python
Python之dict(或对象)与json之间的互相转化实例
2018/06/05 Python
Python使用MyQR制作专属动态彩色二维码功能
2019/06/04 Python
python利用openpyxl拆分多个工作表的工作簿的方法
2019/09/27 Python
利用Python绘制Jazz网络图的例子
2019/11/21 Python
Python3.7将普通图片(png)转换为SVG图片格式(网站logo图标)动起来
2020/04/21 Python
Python flask框架端口失效解决方案
2020/06/04 Python
python3中TQDM库安装及使用详解
2020/11/18 Python
大整数数相乘的问题
2012/07/22 面试题
幼儿园托班开学寄语
2014/01/18 职场文书
幼儿园门卫岗位职责范本
2014/07/02 职场文书
我与祖国共奋进演讲稿
2014/09/13 职场文书
满月酒邀请函
2015/01/30 职场文书
2015年党员发展工作总结
2015/05/13 职场文书
资金申请报告范文
2015/05/14 职场文书
在 Golang 中实现 Cache::remember 方法详解
2021/03/30 Python
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers