<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<button onclick="getLocation()">js定位</button>
<p id="text"></p>
<script>
const textdiv = document.getElementById('text');
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
textdiv.innerHTML =
'经度:' +
position.coords.longitude +
'<br/>纬度:' +
position.coords.latitude;
});
console.log('getCurrentPosition');
} else {
textdiv.innerHTML = '浏览器不支持获取地理位置';
}
}
</script>
</body>
</html>

- 发布:2025-10-16 11:41
- 更新:2025-10-16 11:41
- 阅读:17
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 11 家庭中文版
HBuilderX类型: 正式
HBuilderX版本号: 4.76
手机系统: Android
手机系统版本号: Android 12
手机厂商: 手持PDA
手机机型: PDA
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
vue页面中嵌入web-view 页面, webview地址为:https://cssmx.jst.zj.gov.cn/enterpriseGasCheck/camera/#/location
vue页面中嵌入web-view 页面, webview地址为:https://cssmx.jst.zj.gov.cn/enterpriseGasCheck/camera/#/location
预期结果:
可以正常定位
可以正常定位
实际结果:
不可定位
不可定位
bug描述:
在vue页面中, 嵌套web-view 组件, web-view 的地址是一个网络地址, 嵌套的项目中有使用navigator.geolocation.getCurrentPosition 定位,导致无法定位, 切换x5内核,依然无法定位
排查过程:
1、检查设备的Android system webview ,结果是:91.0.4472.114.
2、在hbuilder 中切换浏览器内核为X 5 , 仍不支持定位。
3、app权限中支持。
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
0 个回复