鸿蒙OS之用户定位及地图服务

Location Kit 定位服务

位置子系统使用多种定位技术提供服务,如GNSS定位、基站定位、WLAN/蓝牙定位(基站定位、WLAN/蓝牙定位后续统称“网络定位技术”);通过这些定位技术,无论用户设备在室内或是户外,都可以准确地确定设备位置。

运作机制

位置能力作为系统为应用提供的一种基础服务,需要应用在所使用的业务场景,向系统主动发起请求,并在业务场景结束时,主动结束此请求,在此过程中系统会将实时的定位结果上报给应用

开发步骤

1:配置权限

// 位置信息
{
  "name": "ohos.permission.APPROXIMATELY_LOCATION",
  "reason": '$string:permission_reason_location',
  "usedScene": {}
},
{
  "name": "ohos.permission.LOCATION",
  "reason": '$string:permission_reason_location',
  "usedScene": {}
},

2:用户手动授权

//需要申请的权限名
private permissions: Permissions[] =  ['ohos.permission.APPROXIMATELY_LOCATION','ohos.permission.LOCATION'];
//调用用户授权方法,同时利用try-catch捕获异常
try {
  await PermissionManager.requestPermissions(this.permissions)
  promptAction.showToast({ message: '权限获取成功' })
} catch (e) {
  promptAction.showToast({ message: '权限获取失败' })
}
//封装获取权限的方法
async requestPermissions(permissions: Permissions[]) {
  // 程序控制访问对象
  const atManager = abilityAccessCtrl.createAtManager()
  //   核心Api,拉起弹框,向用户申请权限,返回值是authResults: Array<number>和permissions: Array<string>;
  const requestResult = await atManager.requestPermissionsFromUser(getContext(), permissions)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值