mirror of
https://gitee.com/openharmony/applications_permission_manager
synced 2024-11-23 03:09:41 +00:00
38a6298dfb
Merge pull request !210 from fanchenxuan/cherry-pick-1702863921 |
||
---|---|---|
AppScope | ||
entry | ||
figures | ||
hvigor | ||
permissionmanager | ||
signature | ||
.gitignore | ||
build-profile.json5 | ||
bundle.json | ||
hvigorfile.js | ||
hvigorw | ||
hvigorw.bat | ||
LICENSE | ||
OAT.xml | ||
oh-package-lock.json5 | ||
oh-package.json5 | ||
README_zh.md | ||
README.md |
PermissionManager
Introduction
PermissionManager, a system application preset in OpenHarmony, provides permission dialog boxes, permission management settings, and permission usage records during the running of apps.
The following figure shows the architecture of the PermissionManager application.
Directory Structure
/applications/standard/permission_manager
├── entry # Directory of the entry module
├── permissionmanager # Directory of the PermissionManager module
│ ├── src/main/ets # ets module
│ │ ├── Application # abilitystage directory
│ │ ├── MainAbility # Permission management ability
│ │ ├── ServiceExtAbility # serviceExtension configuration
│ │ ├── common # Common utilities
│ │ └── pages # Pages
│ ├── resources # Global resource files
│ └── module.json5 # Global configuration file
├── signature # Certificate files
└── LICENSE # License file
Installation, operation and commissioning
Application installation
- There are two files that need to change the suffix to json5
/AppScope/app.json
/permissionmanager/src/main/module.json
- Uninstall preset rights management for the first installation
hdc shell mount -o remount,rw /
hdc shell rm -rf /system/app/com.ohos.permissionmanager
hdc shell rm -rf /data/*
hdc shell reboot
- Install the signed hap package
hdc install Packet path
Application running
- Permission dialog:requestPermissionsFromUser
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)}`);
}
- Permission manager
Settings-Privacy-Permission Manager
Application debugging
- Add log to the program
const TAG = "PermissionManager_Log"
console.info(TAG + `log`);
- Grab log:
hdc shell hilog -Q pidoff
hdc shell -b D
hdc shell hilog -r && hdc hilog > log.txt
How to Use
For details, see Permission Application Guide.