鸿蒙uni-app uni.getLocation请求不成功

鸿蒙uni-app uni.getLocation请求不成功

8 回复

我也遇到这个问题,权限都配置了,权限确认框也拉起来了也同意了,还是报错:{errMsg: “getLocation:fail maybe not turn on the system location permission.”}
但是真机调试是好的,模拟器不行

更多关于鸿蒙uni-app uni.getLocation请求不成功的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


下拉系统状态栏看看 gps 是不是没开启

怎么弄的呢 我连真机都不行

说明一下报错的内容

{errMsg: “getLocation:fail maybe not turn on the system location permission.”}

这个是没打开系统设置中的gps权限

agc 后台确保开启位置相关权限。https://developer.huawei.com/consumer/cn/service/josp/agc/index.html 项目设置 - api 管理-位置服务

在鸿蒙系统上使用uni.getLocation失败,常见原因及解决方案如下:

  1. 权限配置问题

    • 确保manifest.json中正确配置位置权限:
    "permissions": {
      "getLocation": {
        "desc": "用于获取当前位置信息"
      }
    }
    
    • 鸿蒙系统需在应用权限管理中开启位置服务权限
  2. 系统定位服务未开启

    • 检查设备是否开启GPS或网络定位
    • 鸿蒙系统:设置 > 位置服务 > 开启定位开关
  3. 签名校验问题(仅Android)

    • 使用自有证书签名时,需在高德/百度等地图平台配置SHA1指纹
    • 调试模式可使用默认签名
  4. 代码调用示例

    uni.getLocation({
      type: 'gcj02',
      success: (res) => {
        console.log('纬度:' + res.latitude);
        console.log('经度:' + res.longitude);
      },
      fail: (err) => {
        console.error('获取失败:', err);
        // 建议提示用户检查定位权限和开关
      }
    });
回到顶部