applications_permission_man.../README_zh.md
fanchenxuan f62d8618a9 Readme更新
Signed-off-by: fanchenxuan <fanchenxuan@huawei.com>
2023-06-05 17:16:01 +08:00

3.0 KiB
Raw Blame History

访问控制

简介

权限管理应用是OpenHarmony中预置的系统系统应用为用户提供运行时权限弹框、权限管理设置和权限使用记录展示等功能。

权限管理应用的架构图如下所示:

目录

/applications/standard/permission_manager
├── entry                              # entry模块目录
├── permissionmanager                  # 权限管理模块目录
│   ├── src/main/ets                   # ets模块
│   │       ├── Application            # abilitystage目录
│   │       ├── MainAbility            # 权限管理ability
│   │       ├── ServiceExtAbility      # serviceExtension配置目录
│   │       ├── common                 # 公共工具目录
│   │       └── pages                  # 页面目录
│   ├──  resources                     # 全局资源文件目录
│   └──  module.json5                  # 全局配置文件
├── signature                          # 证书文件目录
└── LICENSE                            # 许可文件

安装、运行、调试

应用安装

  • 代码编译有两个文件需要将后缀名修改为json5
/AppScope/app.json
/permissionmanager/src/main/module.json
  • 初次安装需要卸载系统预置的权限管理
hdc shell mount -o remount,rw /
hdc shell rm -rf /system/app/com.ohos.permissionmanager
hdc shell rm -rf /data/*
hdc shell reboot
  • 安装签过名的hap包
hdc install 包路径

应用运行

import abilityAccessCtrl from '@ohos.abilityAccessCtrl';
let atManager = abilityAccessCtrl.createAtManager();
try {
    atManager.requestPermissionsFromUser(this.context, ['ohos.permission.CAMERA'], (err, data)=>{
        console.info('data:' + JSON.stringify(data));
        console.info('data permissions:' + data.permissions);
        console.info('data authResults:' + data.authResults);
    });
} catch(err) {
    console.log(`catch err->${JSON.stringify(err)}`);
}
  • 权限管理

设置-隐私-权限管理

应用调试

  • 在程序中添加 log
const TAG = "PermissionManager_Log"
console.info(TAG + `log`);
  • 抓取log日志
hdc shell hilog -Q pidoff
hdc shell -b D
hdc shell hilog -r && hdc hilog > log.txt

使用说明

参见使用说明 使用说明

相关仓

security_access_token