uni-app uni.chooseLocation不能选择地址
uni-app uni.chooseLocation不能选择地址
项目属性 | 信息 |
---|---|
产品分类 | uniapp/App |
PC开发环境 | Mac |
PC系统版本 | 14.7.4 (23H420) |
HBuilderX类型 | 正式 |
HBuilderX版本 | 4.57 |
手机系统 | iOS |
手机系统版本 | iOS 16 |
手机厂商 | 苹果 |
手机机型 | ios |
页面类型 | vue |
vue版本 | vue2 |
打包方式 | 云端 |
项目创建方式 | HBuilderX |
操作步骤:
uni.chooseLocation({
success: (res) => {
if (res.errMsg === 'chooseLocation:ok') {
console.log('位置名称:' + res.name);
console.log('详细地址:' + res.address);
console.log('纬度:' + res.latitude);
console.log('经度:' + res.longitude);
}
}
});
预期结果:
- 可以正常选择地点
实际结果:
- 搜索不了,也显示不了地址
bug描述:
[JS Framework] Failed to execute the callback function:
14:17:29.286 TypeError: undefined is not an object (evaluating 'e.data.detail.points') __ERROR
ios手机一直报错,并且地址一直搜索不到
选择不了地图
配置项一直正确
更多关于uni-app uni.chooseLocation不能选择地址的实战教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
安卓是在地图上那个红色标志拖动不能显示标志所在地址,但是搜索可以
更多关于uni-app uni.chooseLocation不能选择地址的实战教程也可以访问 https://www.itying.com/category-93-b0.html
压缩包为安卓的演示视频
根据你提供的信息,uni.chooseLocation在iOS设备上出现问题的可能原因和解决方案如下:
- 权限问题:
- 确保在manifest.json中正确配置了定位权限:
"ios": {
"permissions": {
"LOCATION_WHEN_IN_USE": "描述定位用途"
}
}
- 高德/腾讯地图Key配置:
- iOS端需要单独配置地图SDK的Key,检查manifest.json中是否配置了正确的iOS地图Key
- iOS系统限制:
- iOS 16对定位权限管理更严格,需要确保:
- 用户已授权定位权限
- 在系统设置中开启了定位服务
- API调用时机问题:
- 建议在用户交互事件(如按钮点击)中调用chooseLocation,不要在页面初始化时直接调用
- 错误处理:
- 添加完整的错误回调处理:
uni.chooseLocation({
success: (res) => {
// 成功处理
},
fail: (err) => {
console.error('选择位置失败:', err);
}
});