根據 UserAgent 是否存在 Android,或 iPhone 能夠判斷網頁是運行在 蘋果手機 或 微信手機中。具體是安卓的在 微信中、仍是在瀏覽器中、仍是在APP中,在iPhone的 微信中、仍是在瀏覽器中、仍是在WebApp中,均可以經過UserAgent來判斷。前端
前端JS 獲取 UserAgent 可使用:navigator.userAgent。
後端程序可使用 HTTP_USER_AGENT 來獲取。好比PHP能夠用 $_SERVER[‘HTTP_USER_AGENT’],asp能夠用 Server.Servervariables(‘HTTP_USER_AGENT’) 。web
安卓手機後端
APP/WebView瀏覽器
Mozilla/5.0 (Linux; Android 6.0.1; MX4 Build/MOB30M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/51.0.2704.106 Mobile Safari/537.36
微信微信
Mozilla/5.0 (Linux; Android 6.0.1; MX4 Build/MOB30M) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/37.0.0.0 Mobile MQQBrowser/6.8 TBS/036849 Safari/537.36 MicroMessenger/6.3.27.880 NetType/WIFI Language/zh_CN
瀏覽器app
Mozilla/5.0 (Linux; Android 6.0.1; MX4 Build/MOB30M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.154 Mobile Safari/537.36
存在 Version,是App(微信或APP)內部的WebView
微信存在 MicroMessenger/ NetType/ Language/
不存在則爲其餘APP
其餘模式爲瀏覽器webapp
蘋果手機ui
webappcode
Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A456
微信/WebViewget
Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A456 MicroMessenger/6.3.27 NetType/WIFI Language/zh_CN
瀏覽器
Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Mobile/14A456 Safari/602.1
微信存在 MicroMessenger/ NetType/ Language/
手機瀏覽器存在 Version/XX.XX Mobile/XX.XX
啥都不存在是WebApp,還有個 window.navigator.standalone 判斷