微信、QQ等内置浏览器定位失败 您所在的位置:网站首页 谷歌无法获取位置权限 微信、QQ等内置浏览器定位失败

微信、QQ等内置浏览器定位失败

2024-07-02 20:25| 来源: 网络整理| 查看: 265

场景:微信7.0 苹果可以获取到定位 安卓获取不到定位

原因:微信升级7.0做了安全限制 导致使用http的定位不能正常使用

解决办法:升级https 且是正规的SSL证书 自签名的证书 证书链不完整也是不行的

注意:页面使用jssdk都需要使用https调用

微信升级7.0之前 公众号网页一直稳定的运行,升级7.0以后问题爆发 体现在使用高德地图上无法获取定位问题,打印高德地图返回的信息  提示是 Geolocation permission denied 查阅文档 说可能是以下问题导致:

Geolocation permission denied:用户禁用了定位权限,需要用户开启设备和浏览器的定位权限,并在浏览器弹窗中点击“允许使用定位”选项。    Geolocation permission denied:浏览器禁止了非安全域的定位请求,比如Chrome、IOS10已陆续禁止,这时候需要升级站点到HTTPS。 详细查看文档:Geolocation的定位流程以及定位失败的原因

因为手机其他浏览器开启定位都可以获取到定位 唯独在微信内置浏览器不行 然后一直纠结在不是微信没有定位权限了 直到昨天排查 有人提出是微信升级7.0以后出现的问题 而且同类型公众号的高德地图定位是可以使用的 抓包对比了一下 只有https和http的不同,所以 我去验证了微信7.0升级后苹果和安卓的对比 苹果是可以正常获取定位授权 只有安卓微信7.0以后获取不到  7.0之前的版本是可以的。

于是去百度了微信7.0升级的影响以及有没有人和我同问题的 ,终于在一个博客下发现原由:

由于微信7.0版本升级了对https的安全限制,在微信7.0版本及以上版本使用http协议访问定位组件会导致定位失败。

另外ISO10也限制了非安全域的浏览器定位请求。 ———————————————— 版权声明:本文为CSDN博主「鱼被吃了」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qy_0626/article/details/86550821



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有