怎么判断网页是在浏览器打开,还是app打开

网页打包的app,需要加一个下载按钮,在浏览器打开就显示这个按钮,在app打开就把这个按钮隐藏。
如何判断网页是在浏览器打开还是app打开呢?
在网上找了一些方法,发现都不能用。
后来经过自己的测试,终于找到方法了。
在网页中打印window.navigator.userAgent,看看浏览器和app打开有什么区别
安卓app:

Mozilla/5.0 (Linux; Android 9; HRY-AL00a Build/HONORHRY-AL00a; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/72.0.3626.121 Mobile Safari/537.36 agentweb/4.0.2 UCBrowser/11.6.4.950 agentweb/3.1.0

安卓浏览器:

Mozilla/5.0 (Linux; Android 9; HRY-AL00a Build/HONORHRY-AL00a) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36

我发现安卓app打开的时候,有agentweb,浏览器打开没有

苹果app:

Mozilla/5.0 (iPhone; CPU iPhone OS 12_4_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148

苹果浏览器:

Mozilla/5.0 (iPhone; CPU iPhone OS 12_4_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1.2 Mobile/15E148 Safari/604.1

我发现苹果浏览器打开有Version,苹果app打开没有Version

于是,我就通过下面这段代码来判断网页是浏览器还是app打开,如果是app打开就隐藏下载按钮

if (window.navigator.userAgent.indexOf('iPhone') > -1) {  
      //苹果      
      if(window.navigator.userAgent.indexOf('Version') == -1){
          $(".btn").hide();//隐藏下载按钮
      }
}  
if (window.navigator.userAgent.indexOf('Android') > -1) {  
      //安卓      
      if(window.navigator.userAgent.indexOf('agentweb') > -1){
          $(".btn").hide();//隐藏下载按钮
      }
}

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: