你想反馈一个 Bug 还是 提一个需求?
反馈一个BUG
* Bug 表现是什么?预期表现是什么?
安卓微信的 web-view 的 user-agent 是包含了 miniprogram 字符串的。ios 微信却没有。
* 如何复现?
用 web-view 打开任意页面,获取其发起的请求里携带的 user-agent 即可。
我拦截到的各个客户端的 user-agent 如下:
① dev-tools:
Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1 wechatdevtools/1.01.1712150 MicroMessenger/6.5.7 Language/zh_CN webview/1_3 webdebugger miniprogram port/9974
② android wechat:
Mozilla/5.0 (Linux; Android 7.0; Mi-4c Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043632 Safari/537.36 MicroMessenger/6.6.1.1220(0x26060135) NetType/WIFI Language/zh_CN MicroMessenger/6.6.1.1220(0x26060135) NetType/WIFI Language/zh_CN miniProgram
③ iphone6:
Mozilla/5.0 (iPhone; CPU iPhone OS 11_2_1 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Mobile/15C153 MicroMessenger/6.6.1 NetType/WIFI Language/zh_CN
④ iphone7:
Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Mobile/14G60 MicroMessenger/6.6.1 NetType/WIFI Language/zh_CN
所以目前来看,ios 微信的实现是有问题的。
user-agent 对于我们开发者来说比较方便,尤其在一些做服务端渲染的页面,以及其他对用户的运行环境敏感的服务。希望官方能够进行相应的修复或解答。
我也遇到了这个问题, 请问楼主怎么解决后的?是在web-view中传参数吗?
类似吧,当时是以 window 上的小程序环境变量为准。
请问具体怎么实现的,有没有代码参考下,谢谢
在网页内可通过
window.__wxjs_environment
变量判断是否在小程序环境