安卓微信升级7.0后,小程序及公众号内 h5页面 jsapi定位(高德,百度,腾讯地图API)失败原因

调用失败原因

据说是 google 的安全策略问题, 涉及 隐私信息的 比如定位 需要 https 站点, 微信 7.0 更新了 sdk

解决方案

将网站/小程序/公众号后台地址从http 升级https ,而且必须是正规的SSL证书,自签名的证书 证书链不完整也是不行的。

比如我的公众号h5的域名地址是:http://weixin.xxx.cn,现在要升级为https://weixin.xxx.cn

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

具体原因想必不必多说,网上也有很多说明,比如以下博文:

微信7.0升级后 高德地图在微信内置浏览器定位失败

安卓微信升级7.0后, h5页面 jsapi定位(我使用高德)失败

安卓微信7.0地图无法定位问题

但我以我个人的列子再阐述一遍:

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

服务器:windows server 2012,IIS7

云服务器及域名商:阿里云及阿里域名

解决办法:申请阿里云免费SSL证书,然后将证书部署到IIS7,将站点域名重新绑定到https,把公众号菜单的地址改为https。

注意:按照以上方法实现后,会发现访问https地址,比如https://weixin.xxx.cn依然无法访问,原因是HTTPS的端口是443,阿里云服务器的安全策略需要开放443这个端口

 配置阿里云免费SSL证书的教程:阿里云获取免费SSL证书 附开启阿里云端口图文详解

IIS证书部署并转化为HTTPS教程:IIS 网站 HTTP 转 HTTPS

阿里云开通HTTPS(443/443)端口的方法,想必使用阿里云服务器的人应该都知道:在服务器实例里,找到“网络和安全组”,“安全组配置”,“配置规则”,“快速创建规则”,然后选择https进行创建。

安卓微信升级7.0后,小程序及公众号内 h5页面 jsapi定位(高德,百度,腾讯地图API)失败原因_第1张图片

你可能感兴趣的:(微信应用开发,Web前端开发)