HarmonyOS鸿蒙Next中在app的module.json5里提交权限报错
HarmonyOS鸿蒙Next中在app的module.json5里提交权限报错 添加的权限如下
{ "name": "ohos.permission.APP_TRACKING_CONSENT" }
报错信息
The 'reason' and 'usedScene' attributes are mandatory for user_grant permissions.
应该怎么解决
当申请的权限为user_grant权限时,reason和usedScene是必填项,看你并未配置这俩个字段,详情请参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/declare-permissions-in-acl-V5
更多关于HarmonyOS鸿蒙Next中在app的module.json5里提交权限报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
这个权限的使用需要添加描述,并且在代码中调用检查权限是否开启,没开启的话还要调用授权弹窗,当用户点同意后才能继续使用。
路径:src/main/module.json5
{
"module": {
"requestPermissions": [
{
"name": "ohos.permission.APP_TRACKING_CONSENT",
"reason": "$string:APP_TRACKING_CONSENT_reason",
"usedScene": {
"abilities": [
"EntryAbility"
],
"when":"inuse"
}
}
],
路径:src/main/resources/base/element/string.json
{
"string": [
{
"name": "module_desc",
"value": "module description"
},
{
"name": "EntryAbility_desc",
"value": "description"
},
{
"name": "EntryAbility_label",
"value": "label"
},
{
"name": "APP_TRACKING_CONSENT_reason",
"value": "需要xxx权限说明"
}
]
}
代码量比较多就不继续粘了,建议你看下我之前写的实现分贝仪功能代码,逻辑是一样,就把权限换一下就行了。
参考:https://developer.huawei.com/consumer/cn/blog/topic/03165958983248085
在HarmonyOS鸿蒙Next中,如果在`module.json5`文件中提交权限时遇到报错,可能是由于权限声明格式不正确或权限名称拼写错误。`module.json5`文件用于定义应用的模块配置,包括权限声明。权限声明需要在`module.json5`文件的`abilities`或`module`节点下正确配置。常见的错误包括权限名称未使用正确的字符串格式,或权限未在`requestPermissions`节点中正确声明。确保权限名称与系统提供的权限列表一致,并遵循JSON格式规范。
在HarmonyOS鸿蒙Next中,如果在module.json5
中提交权限时遇到报错,可能是以下原因导致的:
- 权限声明错误:检查权限名称是否正确,确保与系统定义的权限一致。
- 权限未在
requestPermissions
中声明:确保所需权限已在requestPermissions
字段中正确声明。 - 权限分组问题:某些权限需要分组声明,确保按照系统要求分组。
- 格式问题:检查
module.json5
文件格式,确保JSON语法正确,如逗号、引号等。
建议仔细阅读官方文档,确保权限声明的正确性。