产品需求:点击按钮 当用户安装了APP则开启APP 否则跳到下载页面
坑:JS是无法判断系统中是否安装了某个APP
网上很多的做法都用到了settimeout 这种做法简直是坑爹 看都不要看
支付宝做法:
支付宝在进入页面就通过协议去尝试打开APP 如果没安装会弹出 safari打不开页面网址无效的报错 你点击立即下载按钮是永远都是调到下载页面(例如IOS跳到APPSTORE)
今日头条做法:
活动页点击立即打开---跳到APPSTORE--window.location="定义好的协议"
如果你没安装的话会报safari打不开页面网址无效的报错
做法选取:
如果是一个按钮要实现的话就采用今日头条做法
如果不是一个按钮就实现所有要求 则可以尝试支付宝的做法
总之:
JS不能判断是否安装APP 网上的做法都是false
一些设想
安装APP的时候注入插件到浏览器里面 前端通过JS(navigator.plugins)去检测有没有插件的信息
网址: http://www.cnblogs.com/wuyuchang/p/4245621.html