uniapp真机运行鸿蒙定位报getLocation:fail maybe not obtain GPS Permission

1. uniapp真机运行鸿蒙定位报getLocation:fail maybe not obtain GPS Permission

  uniapp真机运行鸿蒙定位报getLocation:fail maybe not obtain GPS Permission。

1.1. 问题原因分析

  (1)未在 manifest.json 中配置定位权限

  在 HarmonyOS 应用中,你需要在 manifest.json 文件中显式声明定位权限,否则系统不会授予应用访问位置信息的权限。

  (2)未在鸿蒙设备上开启定位权限

  即使你在代码中申请了权限,如果用户没有手动在系统设置中开启定位权限,应用也无无法获取位置信息。

  (3)未正确调用 uni.getLocation() 或 getlocation 方法

  有些版本的 UniApp 对 HarmonyOS 的支持不够完善,可能需要额外处理或使用原生 API。

1.2. 解决方案

  官方文档:https://uniapp.dcloud.net.cn/api/location/location.html#harmony-set-location

  把 unpackages/dist/dev/app-harmony/entry/src/main/module.json5 文件复制放到 HBuilderX 工程目录/harmony-configs/entry/src/main/module.json5

  把 unpackages/dist/dev/app-harmony/entry/src/main/resources/base/element/string.json 将其复制到 HBuilderX 工程目录/harmony-configs/entry/src/main/resources/base/element/string.json

  编辑 module.json5,在 requestPermissions 中添加下面代码

javascript 复制代码
{
  "name": "ohos.permission.APPROXIMATELY_LOCATION",
  "reason": "$string:location_reason",
  "usedScene": {
    "when": "inuse"
  }
},
{
  "name": "ohos.permission.LOCATION",
  "reason": "$string:location_reason",
  "usedScene": {
    "when": "inuse"
  }
}

  里的定位和模糊定位务必同时存在,否则会被上架驳回。在 api 可在 isHighAccuracy 属性中切换。

  这里的 reason 值为 $string: 开头,不可直接中文字符,需要使用资源引用。编辑刚才复制的 harmony-config 目录中的 string.json,添加下面代码并改写 value。

javascript 复制代码
 {
  "name": "location_reason",
  "value": "用于提供 xx 服务"
}
相关推荐
Java的搬运工2 小时前
HarmonyOS ArkUI V2 实战:Schema 驱动表单、2in1 适配与实时通信
harmonyos·arkts·openharmony·harmonyos next·表单校验·arkui v2·2in1
花先锋队长3 小时前
HarmonyOS 7.0正式发布|华为天气空间运镜城市皮肤从4城增至10城
华为·智能手机·harmonyos
贾伟康3 小时前
【口算王|01】HarmonyOS ArkTS 口算题生成实战:按年级、运算类型和难度生成可控题目
算法·harmonyos·arkts·随机生成·口算题
梦曦i4 小时前
@meng-xi/uni-router 未来展望:夯实基础、深化体验、探索前沿
前端·uni-app
HarmonyOS_SDK6 小时前
基于增强QUIC协议优化弱网下的直播观看体验
harmonyos
安好说AI7 小时前
Flutter 三方库 adaptive_image_picker 的鸿蒙化适配指南:零权限选图、纯 Dart 裁剪与目标大小压缩
flutter·harmonyos
昇腾知识体系8 小时前
msprobe/msdebug 全家桶:昇腾精度比对、溢出检测、msSanitizer 内存检测与 msOpProf 算子调优实战
人工智能·华为·知识图谱
2501_919749039 小时前
华为鸿蒙免费PDF工具—小羊免费PDF
华为·pdf·harmonyos·鸿蒙
2501_9160074710 小时前
使用Apple Dashboards显示和自定iOS应用性能指标与数据可视化指南
android·ios·小程序·https·uni-app·iphone·webview
贾伟康10 小时前
【口算王|10】HarmonyOS ArkTS 语音报题实战:协调朗读、作答和页面生命周期
生命周期·harmonyos·arkts·语音交互·texttospeech