现在moudoule.json5中配置
声明权限-申请应用权限-应用权限管控-程序访问控制-安全-系统 - 华为HarmonyOS开发者 (huawei.com)
"requestPermissions": [{
"name": 'ohos.permission.INTERNET'
},
//设置位置权限
{
"name": 'ohos.permission.APPROXIMATELY_LOCATION',
"reason": '$string:local_reason',
"usedScene": {
"when": 'inuse',
"abilities": ["EntryAbility"]
}
}]
页面显示时候执行下面代码
aboutToAppear(): void {
//权限
//system_grant 网络权限,只需要配置使用
//user_grant 需要先申请 在使用
//授权流程
//配置授权列表
//写代码进行申请
//如果授权过就不会再谈提示
//如果没有授权过,就会弹出确认框
//创建一个管理
const atManager=abilityAccessCtrl.createAtManager()
const context=getContext()
//授权的是位置信息
atManager.requestPermissionsFromUser(context,["ohos.permission.APPROXIMATELY_LOCATION"])
.then((res)=>{
// - -1:未授权,表示权限已设置,无需弹窗,需要用户在"设置"中修改。
// - 0:已授权。
// - 2:未授权,表示请求无效,
console.log(res.authResults.join(","))//authResults表示我们申请的结果
})
}
获取当前位置
获取设备的位置信息开发指导-Location Kit(位置服务)-应用服务 - 华为HarmonyOS开发者 (huawei.com)
Button("获取当前位置")
.onClick(()=>{
geoLocationManager.getCurrentLocation()
.then((res)=>{
console.log('当前精度'+res.latitude+'当前纬度'+res.longitude)
})
})