鸿蒙开发Ability Kit(程序访问控制):【向用户申请单次授权】

申请使用受限权限

受限开放的权限通常是不允许三方应用申请的。当应用在申请权限来访问必要的资源时,发现部分权限的等级比应用APL等级高,开发者可以选择通过ACL方式来解决等级不匹配的问题,从而使用受限权限。

举例说明,如果应用需要使用全局悬浮窗,需要申请ohos.permission.SYSTEM_FLOAT_WINDOW权限,该权限属于system_basic等级。如果应用需要截取屏幕图像,则需要申请ohos.permission.CAPTURE_SCREEN权限,该权限属于system_core等级。此时,normal应用需要跨级别申请该权限。

本节提供两种方式供应用调试阶段使用。两种方式均不可用于发布上架应用市场,如果需要开发商用版本的应用,请在对应的应用市场进行发布证书和签名文件的申请。

  • 方式一:通过DevEco Studio完成ACL方式跨级别申请权限)。

  • 方式二:直接修改HarmonyAppProvision配置文件。

    1. 打开HarmonyAppProvision配置文件,即SDK目录下的"Sdk/openharmony/_{Version} _/toolchains /lib/UnsgnedReleasedProfileTemplate.json"文件。

    2. 修改 "acls" > "allowed-acls" 字段。

      复制代码
      {
        // ...
        "acls":{
          "allowed-acls":[
            "ohos.permission.WRITE_AUDIO",
            "ohos.permission.CAPTURE_SCREEN"
          ]
        }
      }
    3. 重新进行应用签名。

相关推荐
智塑未来20 分钟前
鸿蒙游戏体验手册:四种能力从性能到玩法逐一解锁
游戏·华为·harmonyos
Patrick_Wilson27 分钟前
你知道 git check 的故事吗
git·程序员·命令行
math_hongfan1 小时前
鸿蒙离线数据缓存高级架构:弱网预加载/离线数据优先级/同步冲突解决/上线后数据合并策略
学习·缓存·华为·架构·harmonyos·鸿蒙
SemiTris3 小时前
为什么 C/C++ 不走 Java 式的虚拟机跨平台路线?
java·程序员
math_hongfan5 小时前
鸿蒙企业级数据存储高级架构:从读写分离到冷热数据分层/归档策略/数据生命周期管理最佳实践
人工智能·学习·华为·架构·harmonyos·鸿蒙
math_hongfan7 小时前
鸿蒙存储异常高级排查:文件损坏检测/数据恢复/读写失败重试/磁盘空间预警系统性根治方案
学习·华为·harmonyos·鸿蒙
lilian2337 小时前
Harmony os 技术实战|拼豆制图10:把取消、解析失败和保存失败写成可恢复状态机
java·javascript·华为·harmonyos
2501_919749038 小时前
华为鸿蒙美缝剂实用APP—小羊美缝
华为·harmonyos
2501_919749038 小时前
华为鸿蒙积攒年度高光APP—小羊高光
华为·harmonyos
math_hongfan9 小时前
鸿蒙存储碎片高级清理机制:数据库Vacuum/文件碎片整理/缓存过期清理/主动空间回收策略
jvm·数据库·学习·缓存·华为·harmonyos·鸿蒙