HarmonyOS鸿蒙Next浏览器上permission.query接口返回始终为denied
HarmonyOS鸿蒙Next浏览器上permission.query接口返回始终为denied 鸿蒙浏览器上打开一个页面,在console里通过navigator.permissions.query({‘name’:‘geolocation’})获取当前是否有地理位置权限,但是始终获取的是denied,系统设置里浏览器给了授权,浏览器本身的设置里也给了这个网站授权,但是仍然是denid。调用getCurrentPosition接口,可以直接获取到经纬度数据,不会拉起授权弹窗。鸿蒙上支持通过navigator.permissions.query获取授权吗?

更多关于HarmonyOS鸿蒙Next浏览器上permission.query接口返回始终为denied的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS Next中,navigator.permissions.query 接口目前对地理位置权限(如 geolocation)的支持可能受限或尚未完全实现。你遇到的情况——即使系统设置和浏览器内均已授权,接口仍返回 denied,但 getCurrentPosition 能直接获取经纬度——表明权限检查机制与实际的定位功能存在不一致。
这可能是鸿蒙浏览器对权限查询API的兼容性问题。建议检查HarmonyOS的官方文档或更新日志,确认该接口在目标版本中的支持状态。同时,依赖 getCurrentPosition 的成功回调来处理定位逻辑,可暂时规避权限查询的不可靠性。若需严格权限状态,可考虑通过捕获定位错误或结合其他API(如系统设置查询)作为替代方案。


