genda_0927
genda_0927
  • 发布:2021-10-29 12:10
  • 更新:2022-01-28 17:06
  • 阅读:2703

【报Bug】h5 iOS 15 拒绝位置权限后。用户再打开位置权限,定位信息不准确

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 10.15.3

HBuilderX类型: 正式

HBuilderX版本号: 3.2.9

浏览器平台: 手机系统浏览器

浏览器版本: Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 Mobile/15E148 Safari/604.1

项目创建方式: HBuilderX

示例代码:

uni.getLocation({
type: 'gcj02',
altitude: true,

            })

操作步骤:

API:uni.getLocation
浏览器环境:ios 15 Safari
发生场景:
1、调用api
2、弹窗权限弹窗,点击弹窗拒绝
3、在safari设置中,位置权限改为请求或允许
4、再次调用api
5、获取的位置不准确,是ip定位的结果。
tips:
1、已开通位置服务
2、第四步的时候没有弹出,位置权限授权框
3、安卓中重复此步骤可以正确获取位置
4、使用 官方示例 https://hellouniapp.dcloud.net.cn/ 也会出现此情况,没有正确获取位置
5、在微信中打开官方示例和我自己的代码,都没有此问题
6、配置了腾讯地图key
疑问:
是否是操作手机,再次开启位置权限的方式不对

预期结果:

正确获取位置信息

实际结果:

位置不准,应该获取的是 IP定位的结果

bug描述:

API:uni.getLocation
浏览器环境:ios 15 Safari
发生场景:
1、调用api
2、弹窗权限弹窗,点击弹窗拒绝
3、在safari设置中,位置权限改为请求或允许
4、再次调用api
5、获取的位置不准确,是ip定位的结果。
tips:
1、已开通位置服务
2、第四步的时候没有弹出,位置权限授权框
3、安卓中重复此步骤可以正确获取位置
4、使用 官方示例 https://hellouniapp.dcloud.net.cn/ 也会出现此情况,没有正确获取位置
5、在微信中打开官方示例和我自己的代码,都没有此问题
疑问:
是否是操作手机,再次开启位置权限的方式不对

2021-10-29 12:10 负责人:无 分享
已邀请:
genda_0927

genda_0927 (作者)

已解决,就是操作手机,再次开启位置权限的方式不对。
需要在设置--> 隐私--> 定位服务 --> 找到 safari --> 开启权限

genda_0927

genda_0927 (作者)

附加一个提议,能不能加个参数,区分是否使用ip定位。有的时候需求只需要精准定位,有时也需要没有精准定位就返回IP定位

Blackfly

Blackfly

你好,我也遇到了这个问题。但是我在“设置--> 隐私--> 定位服务”里并没有找到Safari。请问这是什么原因?

该问题目前已经被锁定, 无法添加新回复